Verwenden des Cmdlet \"Get-Command\"

Auflisten aller Windows PowerShell-Cmdlets

Sie können sich nicht mehr an die Namen aller Windows PowerShell-Cmdlets erinnern? Keine Sorge, dies ist eine der Aufgaben, bei denen Ihnen Get-Command helfen kann. Geben Sie einfach Get-Command ohne zusätzliche Parameter ein, dann erhalten Sie eine Liste aller Cmdlets von Windows PowerShell:

Get-Command

Diese Liste sieht etwa wie folgt aus:

CommandType     Name                            Definition
-----------     ----                            ----------
Cmdlet          Add-Content                     Add-Content [-Path] <String[...
Cmdlet          Add-History                     Add-History [[-InputObject] ...
Cmdlet          Add-Member                      Add-Member [-MemberType] <PS...
Cmdlet          Add-PSSnapin                    Add-PSSnapin [-Name] <String...
Cmdlet          Clear-Content                   Clear-Content [-Path] <Strin...

Das ist schon ganz gut, aber doch ** etwas kompliziert zu lesen. Dann reichen Sie doch die Ergebnisse von Get-Command einfach an das Cmdlet Format-List weiter (wir haben den Stern angegeben, um damit zu kennzeichnen, dass wir alle Eigenschaften für jedes Cmdlet zurückerhalten wollen):

Get-Command | Format-List *

Damit erhalten wir für jedes Cmdlet Informationen wie die folgenden:

Name             : Write-Verbose
CommandType      : Cmdlet

DLL              : C:\WINDOWS\assembly\GAC_MSIL\Microsoft.PowerShell.Commands.U
                   tility\1.0.9567.1__31bf3856ad364e35\Microsoft.PowerShell.Com
                   mands.Utility.dll
Verb             : Write
Noun             : Warning
HelpFile         : Microsoft.PowerShell.Commands.Utility.dll-Help.xml
PSSnapIn         : Microsoft.PowerShell.Utility
ImplementingType : Microsoft.PowerShell.Commands.WriteWarningCommand
ParameterSets    : {__AllParameterSets}
Definition       : Write-Warning [-Message] <String> [-Verbose] [-Debug] [-Erro
                   rAction <ActionPreference>] [-ErrorVariable <String>] [-OutV
                   ariable <String>] [-OutBuffer <Int32>]

Name             : Write-Warning
CommandType      : Cmdlet

Ach, Sie wollten eigentlich nur die Namen der Cmdlets? Auch das ist kein Problem. Sie verwenden einfach Select-Object, um alle Eigenschaften bis auf den Namen herauszufiltern:

Get-Command | Select-Object name

Entspricht das eher Ihren Vorstellungen?

Name
----
Add-Content
Add-History
Add-Member
Add-PSSnapin
Clear-Content
Clear-Item
Clear-ItemProperty
Clear-Variable

Hier nun noch eine elegante Anwendungsmöglichkeit von Get-Command. Dieser Befehl ermittelt die Menge der auf einem Computer installierten Cmdlets und reicht diese Information an Get-Help weiter. Get-Help ermittelt pflichtbewusst das Hilfethema für jedes Cmdlet und reicht das Ergebnis an das Cmdlet Out-File weiter, um alle diese Themen in der Datei "C:\Scripts\Help.txt" zu speichern:

Get-Command | Get-Help | Out-File c:\scripts\help.txt

Führen Sie diesen Befehl aus, und Sie haben innerhalb kürzester Zeit ein Dokument erstellt, das die Online-Hilfe für wirklich jedes Cmdlet enthält.

Aliase für "Get-Command"

  • gcm