I finally got a hold of Windows 8 laptop (thank you Microsoft!), connected a keyboard, launched PowerShell and here are the first few results before I run to the dinner. 😉
First off, let’s check the version:
PS C:\> $host.Version
Major Minor Build Revision
----- ----- ----- --------
3 0 -1 -1
So far so good…
When I tried to get all modules, at some point the operation failed but a lot still got added:
PS C:\> (Get-Module -All).count
234
PS C:\> (Get-Module -ListAvailable).count
44
A lot of the modules though seem to be automatically generated from CIM classes:
PS C:\> Get-Module -All
ModuleType Name ExportedCommands
---------- ---- ----------------
Manifest AppLocker {Get-AppLockerFileInformation, Get-AppLockerPolicy, New-AppLockerPolicy,...
Script Appx Get-AppxLastError
Binary Appx {Add-AppxPackage, Get-AppxPackage, Get-AppxPackageManifest, Remove-AppxP...
Script BitLocker {Add-BitLockerKeyProtector, Add-BitLockerPassphraseProtector, Add-BitLoc...
Manifest BitsTransfer {Add-BitsFile, Complete-BitsTransfer, Get-BitsTransfer, Remove-BitsTrans...
Manifest BranchCache {Add-BCDataCacheExtension, Clear-BCCache, Disable-BC, Disable-BCDowngrad...
Cim BranchCacheClientSetti... Get-BCClientSettings
Cim BranchCacheContentServ... Get-BCContentServerSettings
Cim BranchCacheHostedCache... Get-BCHostedCacheServerSettings
Cim BranchCacheNetworkSett... Get-BCNetworkSettings
Cim BranchCacheOrchestrator {Add-BCDataCacheExtension, Clear-BCCache, Disable-BC, Disable-BCDowngrad...
Cim BranchCachePrimaryPubl... Get-BCHashCache
Cim BranchCachePrimaryRepu... Get-BCDataCache
Cim BranchCacheSecondaryRe... Get-BCDataCacheExtension
Cim BranchCacheStatus Get-BCStatus
Manifest CimCmdlets {Get-CimAssociatedInstance, Get-CimClass, Get-CimInstance, Get-CimSessio...
Manifest DirectAccessClientComp... {Disable-DAManualSiteSelection, Enable-DAManualSiteSelection, Get-DAClie...
Cim Disk {Clear-Disk, Get-Disk, Initialize-Disk, New-Partition...}
Script Dism {Add-Driver, Add-Package, Add-ProvisionedAppxPackage, Clear-CorruptMount...
Manifest DnsClient {Resolve-DnsName, Add-DnsClientNrptRule, Clear-DNSClientCache, Get-DNSCl...
Manifest DnsConfig {Clear-DNSClientCache, Get-DNSClient, Get-DNSClientCache, Get-DNSGlobalS...
Binary DnsLookup Resolve-DnsName
Manifest DnsNrpt {Add-DnsClientNrptRule, Get-DnsClientEffectiveNrptPolicy, Get-DnsClientN...
Cim InitiatorId {Get-InitiatorId, Remove-InitiatorId}
Cim InitiatorPort {Get-InitiatorPort, Set-InitiatorPort}
Manifest iSCSI {Connect-IscsiDiscoveredTarget, Disconnect-IscsiDiscoveredTarget, Get-Is...
Cim iSCSIConnection Get-IscsiConnection
Cim iSCSIDiscoveredTarget {Connect-IscsiDiscoveredTarget, Disconnect-IscsiDiscoveredTarget, Get-Is...
Cim iSCSIInitiator Set-IscsiInitiator
Cim iSCSIPersistentTarget {Get-IscsiPersistentTarget, Register-IscsiPersistentTarget, Unregister-I...
Cim iSCSISession Get-IscsiSession
Cim iSCSITargetPortal {Get-IscsiTargetPortal, New-IscsiTargetPortal, Remove-IscsiTargetPortal,...
Looking at the standard PowerShell modules we get:
PS C:\> Get-Module Microsoft.PowerShell.*
ModuleType Name ExportedCommands
---------- ---- ----------------
Manifest Microsoft.PowerShell.Core {Add-History, Add-PSSnapin, Clear-History, Connect-PSSession...}
Manifest Microsoft.PowerShell.D... {Export-Counter, Get-Counter, Get-WinEvent, Import-Counter...}
Manifest Microsoft.PowerShell.Host {Start-Transcript, Stop-Transcript}
Manifest Microsoft.PowerShell.M... {Add-Computer, Add-Content, Checkpoint-Computer, Clear-Content...}
Manifest Microsoft.PowerShell.S... {ConvertFrom-SecureString, ConvertTo-SecureString, Get-Acl, Get-Authenti...
Manifest Microsoft.PowerShell.U... {Add-Member, Add-Type, Clear-Variable, Compare-Object...}
PS C:\> (get-command -Module Microsoft.PowerShell.*).count
248
Here’s a quick list of all the standard cmdlets in the box at the moment:
PS C:\> get-command -Module Microsoft.PowerShell.* | sort module, noun | format-table ModuleName, Name -AutoSize
ModuleName Name
---------- ----
Microsoft.PowerShell.Core Invoke-Command
Microsoft.PowerShell.Core Get-Command
Microsoft.PowerShell.Core Export-Console
Microsoft.PowerShell.Core Out-Default
Microsoft.PowerShell.Core Save-Help
Microsoft.PowerShell.Core Get-Help
Microsoft.PowerShell.Core Update-Help
Microsoft.PowerShell.Core Add-History
Microsoft.PowerShell.Core Invoke-History
Microsoft.PowerShell.Core Clear-History
Microsoft.PowerShell.Core Get-History
Microsoft.PowerShell.Core Out-Host
Microsoft.PowerShell.Core Get-Job
Microsoft.PowerShell.Core Suspend-Job
Microsoft.PowerShell.Core Stop-Job
Microsoft.PowerShell.Core Receive-Job
Microsoft.PowerShell.Core Wait-Job
Microsoft.PowerShell.Core Resume-Job
Microsoft.PowerShell.Core Start-Job
Microsoft.PowerShell.Core Remove-Job
Microsoft.PowerShell.Core Register-JobEvent
Microsoft.PowerShell.Core Import-Module
Microsoft.PowerShell.Core New-Module
Microsoft.PowerShell.Core Get-Module
Microsoft.PowerShell.Core Remove-Module
Microsoft.PowerShell.Core Test-ModuleManifest
Microsoft.PowerShell.Core New-ModuleManifest
Microsoft.PowerShell.Core Export-ModuleMember
Microsoft.PowerShell.Core Out-Null
Microsoft.PowerShell.Core ForEach-Object
Microsoft.PowerShell.Core Where-Object
Microsoft.PowerShell.Core Set-PSDebug
Microsoft.PowerShell.Core Enable-PSRemoting
Microsoft.PowerShell.Core Disable-PSRemoting
Microsoft.PowerShell.Core Get-PSSession
Microsoft.PowerShell.Core Enter-PSSession
Microsoft.PowerShell.Core Exit-PSSession
Microsoft.PowerShell.Core New-PSSession
Microsoft.PowerShell.Core Remove-PSSession
Microsoft.PowerShell.Core Connect-PSSession
Microsoft.PowerShell.Core Receive-PSSession
Microsoft.PowerShell.Core Disconnect-PSSession
Microsoft.PowerShell.Core Register-PSSessionConfiguration
Microsoft.PowerShell.Core Disable-PSSessionConfiguration
Microsoft.PowerShell.Core Unregister-PSSessionConfiguration
Microsoft.PowerShell.Core Set-PSSessionConfiguration
Microsoft.PowerShell.Core Get-PSSessionConfiguration
Microsoft.PowerShell.Core Enable-PSSessionConfiguration
Microsoft.PowerShell.Core Test-PSSessionConfigurationFile
Microsoft.PowerShell.Core New-PSSessionConfigurationFile
Microsoft.PowerShell.Core New-PSSessionOption
Microsoft.PowerShell.Core Add-PSSnapin
Microsoft.PowerShell.Core Remove-PSSnapin
Microsoft.PowerShell.Core Get-PSSnapin
Microsoft.PowerShell.Core New-PSTransportOption
Microsoft.PowerShell.Core Set-StrictMode
Microsoft.PowerShell.Diagnostics Get-Counter
Microsoft.PowerShell.Diagnostics Import-Counter
Microsoft.PowerShell.Diagnostics Export-Counter
Microsoft.PowerShell.Diagnostics Get-WinEvent
Microsoft.PowerShell.Diagnostics New-WinEvent
Microsoft.PowerShell.Host Start-Transcript
Microsoft.PowerShell.Host Stop-Transcript
Microsoft.PowerShell.Management Get-ChildItem
Microsoft.PowerShell.Management Export-CimCommand
Microsoft.PowerShell.Management Stop-Computer
Microsoft.PowerShell.Management Checkpoint-Computer
Microsoft.PowerShell.Management Add-Computer
Microsoft.PowerShell.Management Restore-Computer
Microsoft.PowerShell.Management Remove-Computer
Microsoft.PowerShell.Management Rename-Computer
Microsoft.PowerShell.Management Restart-Computer
Microsoft.PowerShell.Management Reset-ComputerMachinePassword
Microsoft.PowerShell.Management Enable-ComputerRestore
Microsoft.PowerShell.Management Disable-ComputerRestore
Microsoft.PowerShell.Management Get-ComputerRestorePoint
Microsoft.PowerShell.Management Test-ComputerSecureChannel
Microsoft.PowerShell.Management Test-Connection
Microsoft.PowerShell.Management Add-Content
Microsoft.PowerShell.Management Get-Content
Microsoft.PowerShell.Management Clear-Content
Microsoft.PowerShell.Management Set-Content
Microsoft.PowerShell.Management Show-ControlPanelItem
Microsoft.PowerShell.Management Get-ControlPanelItem
Microsoft.PowerShell.Management Write-EventLog
Microsoft.PowerShell.Management New-EventLog
Microsoft.PowerShell.Management Limit-EventLog
Microsoft.PowerShell.Management Remove-EventLog
Microsoft.PowerShell.Management Show-EventLog
Microsoft.PowerShell.Management Get-EventLog
Microsoft.PowerShell.Management Clear-EventLog
Microsoft.PowerShell.Management Get-HotFix
Microsoft.PowerShell.Management Move-Item
Microsoft.PowerShell.Management Invoke-Item
Microsoft.PowerShell.Management Rename-Item
Microsoft.PowerShell.Management Copy-Item
Microsoft.PowerShell.Management Get-Item
Microsoft.PowerShell.Management Remove-Item
Microsoft.PowerShell.Management Set-Item
Microsoft.PowerShell.Management New-Item
Microsoft.PowerShell.Management Clear-Item
Microsoft.PowerShell.Management Remove-ItemProperty
Microsoft.PowerShell.Management New-ItemProperty
Microsoft.PowerShell.Management Get-ItemProperty
Microsoft.PowerShell.Management Move-ItemProperty
Microsoft.PowerShell.Management Clear-ItemProperty
Microsoft.PowerShell.Management Copy-ItemProperty
Microsoft.PowerShell.Management Rename-ItemProperty
Microsoft.PowerShell.Management Set-ItemProperty
Microsoft.PowerShell.Management Get-Location
Microsoft.PowerShell.Management Set-Location
Microsoft.PowerShell.Management Push-Location
Microsoft.PowerShell.Management Pop-Location
Microsoft.PowerShell.Management Convert-Path
Microsoft.PowerShell.Management Resolve-Path
Microsoft.PowerShell.Management Join-Path
Microsoft.PowerShell.Management Split-Path
Microsoft.PowerShell.Management Test-Path
Microsoft.PowerShell.Management Wait-Process
Microsoft.PowerShell.Management Get-Process
Microsoft.PowerShell.Management Debug-Process
Microsoft.PowerShell.Management Start-Process
Microsoft.PowerShell.Management Stop-Process
Microsoft.PowerShell.Management Get-PSDrive
Microsoft.PowerShell.Management Remove-PSDrive
Microsoft.PowerShell.Management New-PSDrive
Microsoft.PowerShell.Management Get-PSProvider
Microsoft.PowerShell.Management New-Service
Microsoft.PowerShell.Management Set-Service
Microsoft.PowerShell.Management Resume-Service
Microsoft.PowerShell.Management Restart-Service
Microsoft.PowerShell.Management Stop-Service
Microsoft.PowerShell.Management Start-Service
Microsoft.PowerShell.Management Get-Service
Microsoft.PowerShell.Management Suspend-Service
Microsoft.PowerShell.Management Start-Transaction
Microsoft.PowerShell.Management Complete-Transaction
Microsoft.PowerShell.Management Get-Transaction
Microsoft.PowerShell.Management Use-Transaction
Microsoft.PowerShell.Management Undo-Transaction
Microsoft.PowerShell.Management New-WebServiceProxy
Microsoft.PowerShell.Management Register-WmiEvent
Microsoft.PowerShell.Management Set-WmiInstance
Microsoft.PowerShell.Management Invoke-WmiMethod
Microsoft.PowerShell.Management Remove-WmiObject
Microsoft.PowerShell.Management Get-WmiObject
Microsoft.PowerShell.Security Set-Acl
Microsoft.PowerShell.Security Get-Acl
Microsoft.PowerShell.Security Set-AuthentipreSignature
Microsoft.PowerShell.Security Get-AuthentipreSignature
Microsoft.PowerShell.Security Get-Credential
Microsoft.PowerShell.Security Set-ExecutionPolicy
Microsoft.PowerShell.Security Get-ExecutionPolicy
Microsoft.PowerShell.Security Get-PfxCertificate
Microsoft.PowerShell.Security ConvertTo-SecureString
Microsoft.PowerShell.Security ConvertFrom-SecureString
Microsoft.PowerShell.Utility Export-Alias
Microsoft.PowerShell.Utility New-Alias
Microsoft.PowerShell.Utility Import-Alias
Microsoft.PowerShell.Utility Set-Alias
Microsoft.PowerShell.Utility Get-Alias
Microsoft.PowerShell.Utility Export-Clixml
Microsoft.PowerShell.Utility Import-Clixml
Microsoft.PowerShell.Utility Trace-Command
Microsoft.PowerShell.Utility Show-Command
Microsoft.PowerShell.Utility Measure-Command
Microsoft.PowerShell.Utility ConvertTo-Csv
Microsoft.PowerShell.Utility ConvertFrom-Csv
Microsoft.PowerShell.Utility Export-Csv
Microsoft.PowerShell.Utility Import-Csv
Microsoft.PowerShell.Utility Get-Culture
Microsoft.PowerShell.Utility Format-Custom
Microsoft.PowerShell.Utility Get-Date
Microsoft.PowerShell.Utility Set-Date
Microsoft.PowerShell.Utility Write-Debug
Microsoft.PowerShell.Utility Register-EngineEvent
Microsoft.PowerShell.Utility Write-Error
Microsoft.PowerShell.Utility Unregister-Event
Microsoft.PowerShell.Utility Get-Event
Microsoft.PowerShell.Utility New-Event
Microsoft.PowerShell.Utility Wait-Event
Microsoft.PowerShell.Utility Remove-Event
Microsoft.PowerShell.Utility Get-EventSubscriber
Microsoft.PowerShell.Utility Invoke-Expression
Microsoft.PowerShell.Utility Unblock-File
Microsoft.PowerShell.Utility Out-File
Microsoft.PowerShell.Utility Get-FormatData
Microsoft.PowerShell.Utility Export-FormatData
Microsoft.PowerShell.Utility Update-FormatData
Microsoft.PowerShell.Utility Out-GridView
Microsoft.PowerShell.Utility Read-Host
Microsoft.PowerShell.Utility Get-Host
Microsoft.PowerShell.Utility Write-Host
Microsoft.PowerShell.Utility ConvertTo-Html
Microsoft.PowerShell.Utility ConvertFrom-Json
Microsoft.PowerShell.Utility ConvertTo-Json
Microsoft.PowerShell.Utility Format-List
Microsoft.PowerShell.Utility Update-List
Microsoft.PowerShell.Utility Import-LocalizedData
Microsoft.PowerShell.Utility Send-MailMessage
Microsoft.PowerShell.Utility Add-Member
Microsoft.PowerShell.Utility Get-Member
Microsoft.PowerShell.Utility Compare-Object
Microsoft.PowerShell.Utility Tee-Object
Microsoft.PowerShell.Utility New-Object
Microsoft.PowerShell.Utility Measure-Object
Microsoft.PowerShell.Utility Group-Object
Microsoft.PowerShell.Utility Select-Object
Microsoft.PowerShell.Utility Sort-Object
Microsoft.PowerShell.Utility Register-ObjectEvent
Microsoft.PowerShell.Utility Write-Output
Microsoft.PowerShell.Utility Out-Printer
Microsoft.PowerShell.Utility Write-Progress
Microsoft.PowerShell.Utility Get-PSBreakpoint
Microsoft.PowerShell.Utility Enable-PSBreakpoint
Microsoft.PowerShell.Utility Disable-PSBreakpoint
Microsoft.PowerShell.Utility Remove-PSBreakpoint
Microsoft.PowerShell.Utility Set-PSBreakpoint
Microsoft.PowerShell.Utility Get-PSCallStack
Microsoft.PowerShell.Utility Export-PSSession
Microsoft.PowerShell.Utility Import-PSSession
Microsoft.PowerShell.Utility Get-Random
Microsoft.PowerShell.Utility Invoke-RestMethod
Microsoft.PowerShell.Utility Start-Sleep
Microsoft.PowerShell.Utility Out-String
Microsoft.PowerShell.Utility Select-String
Microsoft.PowerShell.Utility ConvertFrom-StringData
Microsoft.PowerShell.Utility Format-Table
Microsoft.PowerShell.Utility New-TimeSpan
Microsoft.PowerShell.Utility Get-TraceSource
Microsoft.PowerShell.Utility Set-TraceSource
Microsoft.PowerShell.Utility Add-Type
Microsoft.PowerShell.Utility Update-TypeData
Microsoft.PowerShell.Utility Remove-TypeData
Microsoft.PowerShell.Utility Get-TypeData
Microsoft.PowerShell.Utility Get-UICulture
Microsoft.PowerShell.Utility Get-Unique
Microsoft.PowerShell.Utility Get-Variable
Microsoft.PowerShell.Utility Remove-Variable
Microsoft.PowerShell.Utility New-Variable
Microsoft.PowerShell.Utility Clear-Variable
Microsoft.PowerShell.Utility Set-Variable
Microsoft.PowerShell.Utility Write-Verbose
Microsoft.PowerShell.Utility Write-Warning
Microsoft.PowerShell.Utility Invoke-WebRequest
Microsoft.PowerShell.Utility Format-Wide
Microsoft.PowerShell.Utility Select-Xml
Microsoft.PowerShell.Utility ConvertTo-Xml
To be continued… 😉