At the core of Windows PowerShell is the various sets of cmdlets designed to accomplish specific tasks, much like Control Panel applets (since Windows 3.x) and today’s modern Apps on desktop and mobile devices.
The number of cmdlets has grown significantly at each new release of PowerShell. For instance, the default installation of Windows Server 2016 RTM (en-us) makes 634 cmdlets available which are spread across 41 modules. Updating Windows Server 2012 R2 (PS 4.0) with the corresponding version of WMF 5.x results in 39 and 60 cmdlets added in PS 5.0 and 5.1 respectively. If you do the math(ematics), an additional 21 new cmdlets were introduced between the 5.0 and 5.1 releases. These deal mainly with the management of file catalog, local user/group, time zone and miscellaneous ones like Get-ComputerInfo.
Note that in pre- Windows Server 2016 and Windows 10 Anniversary Update systems …
… per help Update-DscConfiguration -Detailed,
”
This cmdlet is available only as part of the November 2014 update rollup for Windows RT 8.1, Windows 8.1, and
Windows Server 2012 R2 http://support.microsoft.com/en-us/kb/3000850 from the Microsoft Support library. Before you use this cmdlet, review the information in What’s New in Windows PowerShell http://technet.microsoft.com/library/hh857339.aspx in the TechNet library.
”
MORE
– use %windir%\system32\tzutil.exe in previous versions to fulfill the task now done by *-TimeZone cmdlets
– %windir%\system32\systeminfo.exe basically does the same job except that you are working with raw text output and not objects
– you can deploy %windir%\system32\net.exe to manage local users and groups from the standard MS-DOS command line since 3Com/Microsoft LAN Manager 2.x days
PS 5.0 |
PS 5.1 |
Add-LocalGroupMember |
|
Clear-RecycleBin |
Clear-RecycleBin |
ConvertFrom-String |
ConvertFrom-String |
Convert-String |
Convert-String |
Debug-Job |
Debug-Job |
Debug-Runspace |
Debug-Runspace |
Disable-RunspaceDebug |
Disable-LocalUser |
Enable-RunspaceDebug |
Disable-RunspaceDebug |
Enable-LocalUser |
|
Enable-RunspaceDebug |
|
Enter-PSHostProcess |
Enter-PSHostProcess |
Exit-PSHostProcess |
Exit-PSHostProcess |
Find-Package |
Find-Package |
Find-PackageProvider |
Find-PackageProvider |
Get-Clipboard |
Get-Clipboard |
Get-CmsMessage |
Get-CmsMessage |
Get-ComputerInfo |
|
Get-ItemPropertyValue |
Get-ItemPropertyValue |
Get-LocalGroup |
|
Get-LocalGroupMember |
|
Get-LocalUser |
|
Get-Package |
Get-Package |
Get-PackageProvider |
Get-PackageProvider |
Get-PackageSource |
Get-PackageSource |
Get-PSHostProcessInfo |
Get-PSHostProcessInfo |
Get-PSSessionCapability |
Get-PSSessionCapability |
Get-Runspace |
Get-Runspace |
Get-RunspaceDebug |
Get-RunspaceDebug |
Get-TimeZone |
|
Import-PackageProvider |
Import-PackageProvider |
Install-Package |
Install-Package |
Install-PackageProvider |
Install-PackageProvider |
Invoke-DscResource |
Invoke-DscResource |
New-FileCatalog |
|
New-LocalGroup |
|
New-LocalUser |
|
New-PSRoleCapabilityFile |
New-PSRoleCapabilityFile |
Protect-CmsMessage |
Protect-CmsMessage |
Publish-DscConfiguration |
Publish-DscConfiguration |
Register-ArgumentCompleter |
Register-ArgumentCompleter |
Register-PackageSource |
Register-PackageSource |
Remove-LocalGroup |
|
Remove-LocalGroupMember |
|
Remove-LocalUser |
|
Rename-LocalGroup |
|
Rename-LocalUser |
|
Save-Package |
Save-Package |
Set-Clipboard |
Set-Clipboard |
Set-LocalGroup |
|
Set-LocalUser |
|
Set-PackageSource |
Set-PackageSource |
Set-TimeZone |
|
Test-DscConfiguration |
Test-DscConfiguration |
Test-FileCatalog |
|
Uninstall-Package |
Uninstall-Package |
Unprotect-CmsMessage |
Unprotect-CmsMessage |
Unregister-PackageSource |
Unregister-PackageSource |
Update-DscConfiguration |
|
Wait-Debugger |
Wait-Debugger |
Write-Information |