Get basic information about PowerShell commands: cmdlets, files and functions.
Syntax Get-Command [-Noun String[] ] [-Verb String[] ] [[-ArgumentList] Object[] ] [-All] [-ListImported] [-Module String[] ] [-ParameterName String[] ] [-ParameterType PSTypeName[] ] [-Syntax] [-TotalCount Int32 ] [ CommonParameters] Get-Command [[-Name] String[] ] [-CommandType CommandTypes ] [[-ArgumentList] Object[] ] [-All] [-ListImported] [-Module String[] ] [-ParameterName String[] ] [-ParameterType PSTypeName[] ] [-Syntax] [-TotalCount Int32 ] [ CommonParameters] key -All Get all commands, including commands of the same type that have the same name. By default, only returns the command that would run if you typed the command name. PowerShell 3.0+ (In PowerShell 2.0, Get-Command gets all commands by default.) -name Get information for cmdlets (or command elements) with this name. All or part of the name, wildcards are permitted. -verb Get information for cmdlet names that include the specified verb. String "Get", "Set", "Remove" etc. Wildcards are permitted and multiple verbs or verb patterns can be specified: "*et". -noun Get information for cmdlet names that include the specified noun. "process", "Service", "Variable" etc. Wildcards are permitted:"*item*" -commandType CommandTypes Get only specified type(s) of command objects: Alias PowerShell Alias All Application Non-PowerShell files in the PowerShell path. Cmdlet PowerShell Cmdlet (default) ExternalScript .ps1 script files in the Path ($env:path). Filter PowerShell functions. Functon PowerShell functions. Script Script blocks built into the runspace config. Workflow Workflows. You can use -CommandType or its alias, -Type. -totalCount int32 Limit the number of items retrieved. -ListImported Get only commands in the current session. Beginning in PowerShell 3.0, by default, Get-Command gets all installed commands, including, but not limited to, the commands in the current session. In PowerShell 2.0, only commands in the current session are returned. -Module string[] Get the commands that came from the specified modules or snap-ins. Enter the names of modules or snap-ins, or enter snap-in/module object name(s). You can use -Module, or its alias, -PSSnapin. This parameter takes string values, or a PSModuleInfo or PSSnapinInfo object, such as the objects returned by Get-Module, Get-PSSnapin, and Import-PSSession. -ParameterName String Get commands in the session that have the specified parameters. Enter parameter names and/or parameter aliases. Wildcard are supported. The -ParameterName and -ParameterType parameters search only commands in the current session. PowerShell 3.0+ -ParameterType PSTypeName[] Get commands in the session that have parameters of the specified type. Enter the full name or partial name of a parameter type. Wildcards are supported. The ParameterName and ParameterType parameters search only commands in the current session. PowerShell 3.0+ -syntax Describes the item: alias name, cmdlet syntax, function definition, filter definition, script path/filename. -argumentList Get information about a cmdlet when it is used with a specific argument, such as a file path or a registry key. e.g., "HKML\Software" or "cert:\my". This is useful because some cmdlet parameters are added dynamically. CommonParameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -WarningAction, -WarningVariable, -OutBuffer -OutVariable.
Standard Aliases for Get-Command: gcm
Get-Command gets its data directly from the code of a cmdlet, function, script, or alias, unlike Get-Help, which gets its information from help topic files.
The -Module parameter will find the commands added to the session by adding a PowerShell snap-in or importing a module.
To list commands with the same -name in execution order, type the command name without wildcard characters.
Examples
Describe the 'Set' verbs:
PS C:\> get-command -verb set | format-list
PS C:\> get-command -verb set | format list *
List all functions in the current session:
PS C:\> get-command -CommandType function
Display cmdlets in noun-based groups:
PS C:\> get-command | sort-object noun | format-table -group noun
Display all Active Directory cmdlets available to PowerShell:
PS C:\> get-command -module ActiveDirectory -verb get
PS C:\> get-command -module ActiveDirectory -noun ADUser
Retrieve information about all the elements available to PowerShell (all files, functions, aliases and cmdlets):
PS C:\> get-command *
Describe the alias 'dir':
PS C:\> get-command dir | format-list
Klinger: "Oh, you were built for command. Those shoulders --
broad enough for four stars. That height--
commanders should be tall--to look down on his men"
Corporal: "Napoleon didn't do so bad" ~ Dialogue from M*A*S*H 1978
Related PowerShell Cmdlets:
Get-Help - Open the help file.
Get-PSDrive - Get drive information (DriveInfo).
Get-Member - Enumerate the properties of an object.
Equivalent bash command: man - Display helpful information about commands.