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

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

PowerShell Tips Editor 5 min read
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 -Force in 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 use Update-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 -ShowWindow which 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.

Send-Item -To