PowerShell Get-Help: How to Use the Built-In Help System

The best PowerShell practitioners rarely Google syntax — they use Get-Help, the built-in manual that documents every cmdlet, parameter, and behavior directly in the shell. Mastering PowerShell Get-Help means you can look up any command in seconds without leaving your terminal. This guide covers the full Get-Help toolkit: flags, wildcard search, updating the help database, and the difference between Get-Help and Get-Command.
Basic Get-Help Syntax
At its simplest, pass a cmdlet name to Get-Help:
Get-Help Get-ChildItem
NAME
Get-ChildItem
SYNOPSIS
Gets the items and child items in one or more specified locations.
SYNTAX
Get-ChildItem [[-Path] <String[]>] [[-Filter] <String>] ...
If you see only a SYNOPSIS line without detailed SYNTAX, run Update-Help first (requires internet and admin). The truncated output is normal on a fresh Windows install — only stub files ship out of the box.
You can also pass partial names using wildcards:
Get-Help *process*
This lists every help topic whose name contains “process”, which is useful when you can’t remember the exact cmdlet name.
Using -Examples and -Detailed Flags
The two most useful flags are -Examples and -Detailed:
# Show practical usage examples only
Get-Help Get-ChildItem -Examples
# Show full parameter descriptions plus examples
Get-Help Get-ChildItem -Detailed
# Show everything including technical notes
Get-Help Get-ChildItem -Full
The -Examples flag is particularly valuable when you know a cmdlet exists but aren’t sure how to call it. Real examples with context are faster to read than a parameter list. In practice, Get-Help cmdletname -Examples is the first thing experienced PowerShell users reach for.
-------------------------- EXAMPLE 1 --------------------------
PS> Get-ChildItem -Path C:\
Lists the contents of the C: root directory.
Searching Help with Wildcards
You don’t always know the exact cmdlet name. Use wildcards to search across all help topics:
# Find everything related to "csv"
Get-Help *csv*
# Find all help topics about services
Get-Help *service*
# Find cmdlets whose synopsis mentions "registry"
Get-Help * | Where-Object { $_.synopsis -like '*registry*' }
Name Category Synopsis
---- -------- --------
Export-Csv Cmdlet Converts objects into a series of ...
Import-Csv Cmdlet Creates table-like custom objects ...
ConvertTo-Csv Cmdlet Converts .NET objects into ...
The wildcard search returns HelpInfo objects, so you can pipe and filter them like any other PowerShell output.
Updating Help Files with Update-Help
Out-of-the-box PowerShell ships with minimal help stubs. Run Update-Help once to download the full help content:
# Run as Administrator — downloads help for all installed modules
Update-Help -Force
# Update help for a specific module only
Update-Help -Module Microsoft.PowerShell.Management -Force
# If some modules fail (no online help), use -ErrorAction to continue
Update-Help -Force -ErrorAction SilentlyContinue
Update-Help requires an internet connection and administrator rights when updating the LocalMachine scope. It downloads help from Microsoft’s servers for every module that publishes updatable help. Some third-party modules don’t ship online help files, which causes the “No help was found” warning — this is normal.
Opening Online Documentation
For the most current documentation (especially for PowerShell 7+), open the browser directly from PowerShell:
# Opens the Microsoft docs page for this cmdlet in your browser
Get-Help Get-Process -Online
This is useful when the local help files are outdated or when you want to see the full community comments and examples that appear on docs.microsoft.com. The -Online flag works for any cmdlet that has a published online help URI.
Get-Command vs Get-Help
These two cmdlets complement each other:
- Get-Command — answers “does this command exist and what type is it?” It lists cmdlets, functions, aliases, and external executables. Use it to discover commands.
- Get-Help — answers “how do I use this command?” It shows syntax, parameters, and examples. Use it once you know the command name.
# Discover all cmdlets with "Item" in the name
Get-Command *-Item
# Discover what module a cmdlet comes from
Get-Command Get-ChildItem | Select-Object Name, Module, CommandType
# Then read the help
Get-Help Get-ChildItem -Examples
Name Module CommandType
---- ------ -----------
Get-ChildItem Microsoft.PowerShell.Management Cmdlet
A common workflow: use Get-Command *keyword* to find the right cmdlet, then use Get-Help cmdletname -Examples to understand how to call it.
Common Errors and Fixes
-
Help content not installed — shows only synopsis: On a fresh Windows install, most cmdlets show only stub help. Fix this by running
Update-Help -Forcein an elevated PowerShell session with internet access. If you’re in an air-gapped environment, download the help cabinet files from a connected machine and useUpdate-Help -SourcePath \\server\share\help. -
Update-Help requires internet and admin rights: If you’re not an admin or don’t have internet, you can still get partial help using
Get-Help cmdlet -ShowWindowwhich opens the local stub in a searchable GUI window, or visit docs.microsoft.com directly.
Related Cmdlets / See Also
Wrapping Up
Get-Help is the fastest path from “I don’t know this cmdlet” to working code. Use -Examples first, -Detailed when you need parameter specifics, and -Online for the latest docs. Run Update-Help -Force once to unlock the full content. Your next step: try Get-Help Get-Process -Examples right now and see what you get.


