Windows - Help
Note that absolutely none of this is authoritative or directly based on relevant documentation. It’s mostly what I found and figured out and guessed and (in some cases) made up. Some of it may be wrong or dangerous or lead to disaster or confusion. I am not taking responsibility here for anything. Read and act on it at your own peril!
Windows Help is not always up-to-date.
You have probably seen something like this:
PS C:\> Get-Help Get-VM
NAME
Get-VM
SYNTAX
Get-VM [[-Name] <string[]>] [-CimSession <CimSession[]>] [-ComputerName <string[]>] [-Credential <pscredential[]>] [<CommonParameters>]
Get-VM [[-Id] <guid>] [-CimSession <CimSession[]>] [-ComputerName <string[]>] [-Credential <pscredential[]>] [<CommonParameters>]
Get-VM [-ClusterObject] <ClusterObject> [<CommonParameters>]
ALIASES
gvm
REMARKS
Get-Help cannot find the Help files for this cmdlet on this computer. It is displaying only partial help.
-- To download and install Help files for the module that includes this cmdlet, use Update-Help.Apparently the idea is that Windows does not ship with the help files for PowerShell cmdlets because they might be outdated. That is, the help files would be of the same (by then outdated) version as the cmdlets they describe.
By forcing you to Update-Help, MSFT make sure that you have the current version of help files, i.e. help files for newer versions of the cmdlets which you likely don’t have, unless you have also updated the cmdlets.
But this is not the only oddity concerning PowerShell help files. Look at this:
PS C:\> Get-Help New-ScheduledTask
NAME
New-ScheduledTask
SYNOPSIS
Creates a scheduled task instance.
SYNTAX
New-ScheduledTask [[-Action] <CimInstance[]>] [-AsJob <SwitchParameter>] [-CimSession <CimSession[]>] [[-Description] <String>] [[-Principal] <CimInstance>] [[-Settings] <CimInstance>] [-ThrottleLimit
<Int32>] [[-Trigger] <CimInstance[]>] [<CommonParameters>]
DESCRIPTION
The **New-ScheduledTask** cmdlet creates an object that contains the definition of a scheduled task. **New-ScheduledTask** does not automatically register the object with the Task Scheduler service.
You can register a task to run any of the following application or file types: Win32 applications, Win16 applications, OS/2 applications, MS-DOS applications, batch files (*.bat), command files (*.cmd),
or any properly registered file type.Really? You can register a scheduled task of the application type “OS/2 applications”? Even Win16 applications are not working on 64 bit Windows. But OS/2 applications have not been supported by Windows NT since Windows 2000. I am not sure if there even was a version of Windows that supported both the OS/2 subsystem and PowerShell.
Merry Christmas, everyone.
Next: TBD