Get-Help
Get-Help is PowerShell’s built-in documentation cmdlet — it displays help for cmdlets, functions, providers, aliases, scripts, and conceptual (about_*) articles. Alongside Get-Command (find commands) and Get-Member (inspect objects), it forms the discovery triad that makes PowerShell usable without external documentation — valuable on a compromised host where opening a browser to Microsoft Learn is not an option.
Usage patterns
Get-Help # help for Get-Help itself
Get-Help * # list every help topic on the system
Get-Help Get-Process # help for a cmdlet; no exact match →
# substring/wildcard search, then full-text search
Get-Help Get-Process -Full # everything: parameters, examples, notes
Get-Help Get-Process -Examples # just the examples (fastest way to learn usage)
Get-Help Get-Process -Online # open the current Microsoft Learn page in a browser
Get-Help about_* # conceptual articles (about_Quoting_Rules, etc.)
Get-Help Get-Process -Parameter Name # one parameter's documentationQuality-of-life aliases: help and man page the output one screen at a time (pipe through more.com), and <cmdlet> -? is shorthand for cmdlets. In PSReadLine ≥ 2.2.2, F1 shows full help for the command under the cursor and Alt+H shows help for the parameter under the cursor.
Updateable help
Since PowerShell 3.0, help files do not ship with Windows — Get-Help shows only auto-generated syntax until Update-Help (run elevated on Windows PowerShell 5.1) downloads them. Offline machines: Save-Help on a connected box, then Update-Help -SourcePath. This matters in assessments: a target host may have no local help content, and running Update-Help generates obvious network and process noise.
Notes for operators
Get-Helpon a keyword with no command match falls back to full-text search across all help articles — a quick way to discover capabilities (e.g.Get-Help service) whenGet-Command -Nounescapes you.- The full-text fallback can be very noisy (
process→ 12 hits;processes→ 78). Quote exact names when you know them. - Help content itself is a benign-looking reason for PowerShell execution in logs; don’t rely on that cover.
Related
- powershell-service-management —
Get-Help *-Servicereveals the service cmdlets - get-filehash —
Get-Help Get-FileHashlists supported hash algorithms - powershell-base64-encoding — encoding tricks for passing commands to
powershell.exe