Updating Help without Admin Privileges

by Oct 5, 2020

In Windows PowerShell, updating help used to require Administrator privileges due to a design flaw: help had to be stored in the location where the modules resided. Updating help for Microsoft modules which are stored inside the Windows folder required write access to the Windows folder. That’s why normal users were unable to download and use local PowerShell help.

In PowerShell 7, this design flaw has been corrected, and help can now be stored safely inside the user profile. There is no need any more to touch the installation folders of PowerShell modules.

Run Update-Help with the -Verbose parameter in PowerShell 7 to see the changes:

 
PS> Update-Help -Verbose 
VERBOSE: Resolving URI: "https://go.microsoft.com/fwlink/?LinkId=717973"
VERBOSE: Your connection has been redirected to the following URI: 
"https://pshelpprod.blob.core.windows.net/cabinets/powershell-5.1/" 
VERBOSE: Performing the operation "Update-Help" on target "Microsoft.PowerShell.LocalAccounts, Current Version: 5.2.0.0, Available Version: 5.2.0.0, UICulture: en-US". 
VERBOSE: Microsoft.PowerShell.LocalAccounts: Updated C:\Users\USERNAME\Dokumente\PowerShell\Help\Microsoft.PowerShell.LocalAccounts\1.0.0.0\en-US\Microsoft.Powershell.LocalAccounts.dll-Help.xml. Culture en-US Version 5.2.0.0
VERBOSE: Resolving URI: "https://go.microsoft.com/fwlink/?linkid=2113632"
VERBOSE: Your connection has been redirected to the following URI: "https://pshelp.blob.core.windows.net/powershell/help/7.0/Microsoft.PowerShell.Management/"
VERBOSE: Performing the operation "Update-Help" on target "Microsoft.PowerShell.Management, Current Version: 7.0.1.0, Available Version: 7.0.1.0, UICulture: en-US".
VERBOSE: Microsoft.PowerShell.Management: Updated C:\Users\USERNAME\Dokumente\PowerShell\Help\en-US\Microsoft.PowerShell.Commands.Management.dll-Help.xml. Culture en-US Version 7.0.1.0
...
 

To use the downloaded local help files, you can add the “-?” common parameter to any cmdlet you’d like to learn more about:

 
PS> Get-Process -? 

NAME
    Get-Process
    
SYNOPSIS
    Gets the processes that are running on the local computer or a remote computer. 
... 
 

If you did not download local help files before, the “-?” parameter shows only limited syntactical help.


Twitter This Tip! ReTweet this Tip!