Skip to content

PowerShell Approved Verbs

Every approved PowerShell verb with its group, alias prefix and meaning, the synonyms to avoid, and a checker for your own function names.

PowerShell commands are named Verb-Noun, and the verb should come from Microsoft's approved list: it's how people guess your commands (Get-Command -Verb Get), and Import-Module prints a warning when a module exports anything else. Type a verb or a whole function name to check it, or browse all 100 verbs with the synonyms Microsoft says to avoid. Verbs, groups, alias prefixes and meanings are Get-Verb's own (PowerShell 7.6 and Windows PowerShell 5.1); the guidance follows Approved Verbs for PowerShell Commands on Microsoft Learn.

Check a verb or command name

Naming rules

  • Verb-Noun, in Pascal case: an approved verb, a dash and a singular noun. Get-Item, not get-item, Gets-Item or Get-Items.
  • Pick the general action, refine with parameters. Remove-Item -Recurse, not a separate Delete-Folder. Never a synonym of an approved verb: Remove, not Delete or Eliminate.
  • Add a prefix to the noun when your commands might clash with someone else's: Get-ADUser, Get-AzVM.
  • Why it matters: Import-Module warns when a module exports unapproved verbs (-DisableNameChecking hides the warning, it doesn't fix it), and PSScriptAnalyzer's UseApprovedVerbs rule flags them.
  • Reserved: ForEach, Sort, Tee, Where are kept for the language and a few built-in cmdlets (ForEach-Object, Sort-Object, Tee-Object, Where-Object); Ping is deprecated in favour of Test.
  • Version: Build and Deploy were added in PowerShell 6. Windows PowerShell 5.1 doesn't know them, so a module using them still gets the warning there.
  • Alias prefixes are how built-in aliases are formed: ip (Import) + mo (Module) = ipmo. Microsoft calls this a recommendation, not a rule.

Similar verbs, different jobs

New or Add
New creates something. Add puts something into a container that already exists: Add-Content appends to a file.
New or Set
Set changes something that exists, and may create it if it's missing (Set-Variable). New only creates.
Get or Read
Get returns information about a resource, or an object to work with it. Read opens a resource and takes out what's inside it.
Invoke or Start
Invoke runs something and waits for it to finish. Start begins something that keeps running on its own.
Find or Search
Find looks for an object. Search, in Microsoft's definition, creates a reference to a resource in a container.
Ping or Test
Test. Ping is deprecated.

100 approved verbs

Generic actions that fit almost any kind of resource: create, read, change, remove, move between states.

VerbAlias prefixMeaningPairs withUse it instead ofBuilt-in examples
Add
a
Adds a resource to a container, or attaches an item to another item
Remove
Append, Attach, Concatenate, Insert
Add-Content, Add-Member, Add-Type
Clear
cl
Removes all the resources from a container but does not delete the container
—
Flush, Erase, Release, Unmark, Unset, Nullify
Clear-Item, Clear-Content, Clear-History
Close
cs
Changes the state of a resource to make it inaccessible, unavailable, or unusable
Open
——
Copy
cp
Copies a resource to another name or to another container
—
Duplicate, Clone, Replicate, Sync
Copy-Item, Copy-ItemProperty
Enter
et
Specifies an action that allows the user to move into a resource
Exit
Push, Into
Enter-PSSession, Enter-PSHostProcess
Exit
ex
Sets the current environment or context to the most recently used context
Enter
Pop, Out
Exit-PSSession, Exit-PSHostProcess
Find
fd
Looks for an object in a container that is unknown, implied, optional, or specified
—
Search
Find-Module, Find-Script, Find-Command
Format
f
Arranges objects in a specified form or layout
——
Format-Table, Format-List, Format-Hex
Get
g
Specifies an action that retrieves a resource
Set
Read, Open, Cat, Type, Dir, Obtain, Dump, Acquire, Examine, Find, Search
Get-ChildItem, Get-Content, Get-Process
Hide
h
Makes a resource undetectable
Show
Block
—
Join
j
Combines resources into one resource
Split
Combine, Unite, Connect, Associate
Join-Path, Join-String
Lock
lk
Secures a resource
Unlock
Restrict, Secure
—
Move
m
Moves a resource from one location to another
—
Transfer, Name, Migrate
Move-Item, Move-ItemProperty
New
n
Creates a resource
—
Create, Generate, Build, Make, Allocate
New-Item, New-Object, New-PSSession
Open
op
Changes the state of a resource to make it accessible, available, or usable
Close
——
Optimize
om
Increases the effectiveness of a resource
———
Pop
pop
Removes an item from the top of a stack
——
Pop-Location
Push
pu
Adds an item to the top of a stack
——
Push-Location
Redo
re
Resets a resource to the state that was undone
———
Remove
r
Deletes a resource from a container
Add
Clear, Cut, Dispose, Discard, Erase
Remove-Item, Remove-Module, Remove-Variable
Rename
rn
Changes the name of a resource
—
Change
Rename-Item, Rename-ItemProperty, Rename-Computer
Reset
rs
Sets a resource back to its original state
——
Reset-ComputerMachinePassword, Reset-PSResourceRepository
Resize
rz
Changes the size of a resource
———
Select
sc
Locates a resource in a container
—
Find, Locate
Select-Object, Select-String, Select-Xml
Set
s
Replaces data on an existing resource or creates a resource that contains some data
Get
Write, Reset, Assign, Configure, Update
Set-Content, Set-Location, Set-ItemProperty
Show
sh
Makes a resource visible to the user
Hide
Display, Produce
Show-Command, Show-EventLog, Show-ControlPanelItem
Skip
sk
Bypasses one or more resources or points in a sequence
—
Bypass, Jump
—
Split
sl
Separates parts of a resource
Join
Separate
Split-Path
Step
st
Moves to the next point or resource in a sequence
———
Switch
sw
Specifies an action that alternates between two resources, such as to change between two locations, responsibilities, or states
———
Undo
un
Sets a resource to its previous state
——
Undo-Transaction
Unlock
uk
Releases a resource that was locked
Lock
Release, Unrestrict, Unsecure
—
Watch
wc
Continually inspects or monitors a resource for changes
———

Links and messages between a source and a destination.

VerbAlias prefixMeaningPairs withUse it instead ofBuilt-in examples
Connect
cc
Creates a link between a source and a destination
Disconnect
Join, Telnet, Login
Connect-PSSession, Connect-WSMan
Disconnect
dc
Breaks the link between a source and a destination
Connect
Break, Logoff
Disconnect-PSSession, Disconnect-WSMan
Read
rd
Acquires information from a source
Write
Acquire, Prompt, Get
Read-Host
Receive
rc
Accepts information sent from a source
Send
Read, Accept, Peek
Receive-Job, Receive-PSSession
Send
sd
Delivers information to a destination
Receive
Put, Broadcast, Mail, Fax
Send-MailMessage
Write
wr
Adds information to a target
Read
Put, Print
Write-Host, Write-Output, Write-Error

Handling data: converting, storing, importing and exporting, comparing, compressing.

VerbAlias prefixMeaningPairs withUse it instead ofBuilt-in examples
Backup
ba
Stores data by replicating it
—
Save, Burn, Replicate, Sync
—
Checkpoint
ch
Creates a snapshot of the current state of the data or of its configuration
—
Diff
Checkpoint-Computer
Compare
cr
Evaluates the data from one resource against the data from another resource
—
Diff
Compare-Object
Compress
cm
Compacts the data of a resource
Expand
Compact
Compress-Archive, Compress-PSResource
Convert
cv
Changes the data from one representation to another when the cmdlet supports bidirectional conversion or when the cmdlet supports conversion between multiple data types
—
Change, Resize, Resample
Convert-Path, Convert-String
ConvertFrom
cf
Converts one primary type of input (the cmdlet noun indicates the input) to one or more supported output types
—
Export, Output, Out
ConvertFrom-Json, ConvertFrom-Csv, ConvertFrom-SecureString
ConvertTo
ct
Converts from one or more types of input to a primary output type (the cmdlet noun indicates the output type)
—
Import, Input, In
ConvertTo-Json, ConvertTo-Csv, ConvertTo-SecureString
Dismount
dm
Detaches a named entity from a location
Mount
Unmount, Unlink
—
Edit
ed
Modifies existing data by adding or removing content
—
Change, Update, Modify
—
Expand
en
Restores the data of a resource that has been compressed to its original state
Compress
Explode, Uncompress
Expand-Archive
Export
ep
Encapsulates the primary input into a persistent data store, such as a file, or into an interchange format
Import
Extract, Backup
Export-Csv, Export-Clixml, Export-ModuleMember
Group
gp
Arranges or associates one or more resources
——
Group-Object
Import
ip
Creates a resource from data that is stored in a persistent data store (such as a file) or in an interchange format
Export
BulkLoad, Load
Import-Module, Import-Csv, Import-Clixml
Initialize
in
Prepares a resource for use, and sets it to a default state
—
Erase, Init, Renew, Rebuild, Reinitialize, Setup
—
Limit
l
Applies constraints to a resource
—
Quota
Limit-EventLog
Merge
mg
Creates a single resource from multiple resources
—
Combine, Join
—
Mount
mt
Attaches a named entity to a location
Dismount
Connect
—
Out
o
Sends data out of the environment
——
Out-File, Out-String, Out-GridView
Publish
pb
Makes a resource available to others
Unpublish
Deploy, Release, Install
Publish-Module, Publish-Script, Publish-PSResource
Restore
rr
Sets a resource to a predefined state, such as a state set by Checkpoint
—
Repair, Return, Undo, Fix
Restore-Computer
Save
sv
Preserves data to avoid loss
——
Save-Help, Save-Module, Save-Script
Sync
sy
Assures that two or more resources are in the same state
—
Replicate, Coerce, Match
—
Unpublish
ub
Makes a resource unavailable to others
Publish
Uninstall, Revert, Hide
—
Update
ud
Brings a resource up-to-date to maintain its state, accuracy, conformance, or compliance
—
Refresh, Renew, Recalculate, Re-index
Update-Help, Update-List, Update-Module

Checking, measuring and troubleshooting.

VerbAlias prefixMeaningPairs withUse it instead ofBuilt-in examples
Debug
db
Examines a resource to diagnose operational problems
—
Diagnose
Debug-Job, Debug-Process, Debug-Runspace
Measure
ms
Identifies resources that are consumed by a specified operation, or retrieves statistics about a resource
—
Calculate, Determine, Analyze
Measure-Object, Measure-Command
Ping
pi
Use the Test verb
———
Note: Deprecated: use Test.
Repair
rp
Restores a resource to a usable condition
—
Fix, Restore
—
Resolve
rv
Maps a shorthand representation of a resource to a more complete representation
—
Expand, Determine
Resolve-Path
Test
t
Verifies the operation or consistency of a resource
—
Diagnose, Analyze, Salvage, Verify
Test-Path, Test-Connection, Test-Json
Trace
tr
Tracks the activities of a resource
—
Track, Follow, Inspect, Dig
Trace-Command

Moving something through its life: install, start, stop, approve, register.

VerbAlias prefixMeaningPairs withUse it instead ofBuilt-in examples
Approve
ap
Confirms or agrees to the status of a resource or process
———
Assert
as
Affirms the state of a resource
—
Certify
—
Build
bd
Creates an artifact (usually a binary or document) out of some set of input files (usually source code or declarative documents)
———
Note: PowerShell 6 and later. Windows PowerShell 5.1 doesn't list it, so Import-Module warns there.
Complete
cmp
Concludes an operation
——
Complete-Transaction
Note: Get-Verb gives the alias prefix cmp; Microsoft Learn's table shows cp, which is Copy's.
Confirm
cn
Acknowledges, verifies, or validates the state of a resource or process
—
Acknowledge, Agree, Certify, Validate, Verify
—
Deny
dn
Refuses, objects, blocks, or opposes the state of a resource or process
—
Block, Object, Refuse, Reject
—
Deploy
dp
Sends an application, website, or solution to a remote target[s] in such a way that a consumer of that solution can access it after deployment is complete
———
Note: PowerShell 6 and later. Windows PowerShell 5.1 doesn't list it, so Import-Module warns there.
Disable
d
Configures a resource to an unavailable or inactive state
Enable
Halt, Hide
Disable-PSBreakpoint, Disable-PSRemoting, Disable-WSManCredSSP
Enable
e
Configures a resource to an available or active state
Disable
Start, Begin
Enable-PSBreakpoint, Enable-PSRemoting, Enable-WSManCredSSP
Install
is
Places a resource in a location, and optionally initializes it
Uninstall
Setup
Install-Module, Install-Script, Install-Package
Invoke
i
Performs an action, such as running a command or a method
—
Run, Start
Invoke-Command, Invoke-WebRequest, Invoke-RestMethod
Register
rg
Creates an entry for a resource in a repository such as a database
Unregister
—
Register-WmiEvent, Register-EngineEvent, Register-ObjectEvent
Request
rq
Asks for a resource or asks for permissions
———
Restart
rt
Stops an operation and then starts it again
—
Recycle
Restart-Service, Restart-Computer
Resume
ru
Starts an operation that has been suspended
Suspend
—
Resume-Job, Resume-Service
Start
sa
Initiates an operation
Stop
Launch, Initiate, Boot
Start-Process, Start-Service, Start-Job
Stop
sp
Discontinues an activity
Start
End, Kill, Terminate, Cancel
Stop-Process, Stop-Service, Stop-Job
Submit
sb
Presents a resource for approval
—
Post
—
Suspend
ss
Pauses an activity
Resume
Pause
Suspend-Job, Suspend-Service
Uninstall
us
Removes a resource from an indicated location
Install
—
Uninstall-Module, Uninstall-Script, Uninstall-Package
Unregister
ur
Removes the entry for a resource from a repository
Register
Remove
Unregister-Event, Unregister-PSRepository, Unregister-PackageSource
Wait
w
Pauses an operation until a specified event occurs
—
Sleep, Pause
Wait-Job, Wait-Process

Access and protection.

VerbAlias prefixMeaningPairs withUse it instead ofBuilt-in examples
Block
bl
Restricts access to a resource
Unblock
Prevent, Limit, Deny
—
Grant
gr
Allows access to a resource
Revoke
Allow, Enable
—
Protect
pt
Safeguards a resource from attack or loss
Unprotect
Encrypt, Safeguard, Seal
Protect-CmsMessage
Revoke
rk
Specifies an action that does not allow access to a resource
Grant
Remove, Disable
—
Unblock
ul
Removes restrictions to a resource
Block
Clear, Allow
Unblock-File
Unprotect
up
Removes safeguards from a resource that were added to prevent it from attack or loss
Protect
Decrypt, Unseal
Unprotect-CmsMessage

Verbs that don't fit the other groups.

VerbAlias prefixMeaningPairs withUse it instead ofBuilt-in examples
Use
u
Uses or includes a resource to do something
——
Use-Transaction