Getting Started with Save-Help in PowerShell
Welcome back to Wahmans PowerShell Blog! Today we’re diving into a handy cmdlet that often gets overlooked but is extremely useful in both small lab environments and large enterprise setups — Save-Help
.
Save-Help is a PowerShell cmdlet that downloads and saves the most current Help files for PowerShell modules to a specified directory. This is particularly useful for environments that don’t have internet access, or when you want to create an internal Help repository.
Why Use Save-Help?
- Avoid hitting the internet multiple times for Help content
- Create a centralized repository of Help files
- Support offline systems or secure environments with no outbound connectivity
Syntax
Save-Help [-Module ] [-DestinationPath] [-Force] [-UICulture ] [-Credential ] []
Examples
Example 1: Save Help for All Installed Modules
If you’re just getting started and want to update all your help files, this is the basic use case.
Save-Help -DestinationPath "C:\HelpFiles"
This command downloads the latest Help content for all installed modules and saves them in C:\HelpFiles
.
Example 2: Save Help for Specific Modules
This is useful if you have a large number of modules and only want to update specific ones.
Save-Help -Module "Microsoft.PowerShell.Utility", "Microsoft.PowerShell.Management" -DestinationPath "C:\HelpFiles"
This command saves Help files only for the specified modules.
Example 3: Use Credentialed Access for Proxy Servers
In a network environment secured with authentication, use credentials:
$cred = Get-Credential
Save-Help -Module "PSReadline" -DestinationPath "C:\HelpFiles" -Credential $cred
This will prompt you for a username and password, then use those credentials to access the internet if necessary.
Example 4: Automate Save-Help for Offline Deployment
This example is great for admins managing multiple servers without internet access. Automate the download process on a connected machine and push the updates to offline systems.
# Save help on internet-connected system
Save-Help -DestinationPath "\\FileServer\HelpRepo" -Force
# Copy to offline systems via script or GPO
Invoke-Command -ComputerName Server01 -ScriptBlock {
Update-Help -SourcePath "\\FileServer\HelpRepo" -Force
}
This creates a repeatable and scripted way to ensure help files are always up-to-date on any system, regardless of network connectivity.
Wrap-Up
Whether you’re just learning PowerShell or deeply involved in enterprise automation, Save-Help
is a tool worth knowing. It’s simple yet powerful, especially when managing environments at scale or in security-sensitive contexts.
Happy scripting, and I will see you in the next post!
Leave a Reply