Discover commands with Get-Command in PowerShell
The PowerShell-native answer to 'does this command exist, and which one wins?' — it sees cmdlets, aliases, functions, and executables at once.
01Command
$ Get-Command python -All02What it does
Get-Command searches all command sources — modules, aliases, functions, and PATH executables — so it catches conflicts that where.exe misses (like a profile alias shadowing a real program). Wildcards make it a discovery tool: `Get-Command -Noun Firewall` or `Get-Command *dns*` surfaces related cmdlets you didn't know existed. Adding -Syntax shows the parameter list of a cmdlet, and -ListImported / -Module narrow the search to what's actually loaded.
03Risk
04Undo
✓No undo needed — this command does not change persistent state.
05Sources
- Get-Command - PowerShellEvidence: SS64 shows Get-Command usage for discovering cmdlets, aliases, and executables with wildcards and -ParameterType filters.
- Get-Command | Microsoft LearnEvidence: Microsoft documents Get-Command returning command info including CommandType, Source, Path, and the -All switch to list all matches.
Last verified: 2026-09-17 · Category: Developer
06Related solutions
Use Windows Package Manager to install, search, and upgrade thousands of applications from the community repository in one command.
Understand PowerShell's execution policy scopes and set the one that lets you run your own local scripts without gutting the security model.
One pipeline that renames every matching file in a folder using regular expressions — safer and far more flexible than third-party renamers.