Verwenden des Cmdlet \"Get-Service\"
Auflisten von Dienstinformationen
Die folgende Information wird Sie vielleicht schockieren – setzen Sie sich also besser, bevor Sie weiterlesen: Das Cmdlet Get-Service ist darauf ausgelegt, Informationen über die auf Ihrem Computer installierten Dienste abzufragen. (Dabei behaupten einige Leute, Windows PowerShell sei zu kompliziert!) Möchten Sie tatsächlich Informationen über alle Dienste auf Ihrem Computer? Dann rufen Sie Get-Service ohne zusätzliche Parameter auf:
Get-Service
Sie erhalten etwa die folgenden Informationen zurück:
Status Name DisplayName
------ ---- -----------
Running AdobeActiveFile... Adobe Active File Monitor V4
Stopped Alerter Alerter
Running ALG Application Layer Gateway Service
Stopped AppMgmt Application Management
Running ASChannel Local Communication Channel
Alternativ können Sie auch die Filterfunktionen von Windows PowerShell nutzen, um nur eine Untermenge der auf Ihrem Computer installierten Dienste zurückzugeben. Der folgende Befehl beispielsweise leitet die von Get-Service zurückgegebenen Daten zum Cmdlet Where-Object weiter. Where-Object wiederum filtert alles aus, außer diejenigen Dienste, die angehalten wurden.
Get-Service | Where-Object {$_.status -eq "stopped"}
Im obigen Befehl stellt die Zeichenfolge $_. das über die Pipeline weitergebene Objekt dar (d. h. alle Dienste und deren Eigenschaften), während status einfach die Diensteigenschaft ist, die wir herausfiltern wollen. Und weil wir nur an den angehaltenen Diensten interessiert sind, verwenden wir die Syntax –eq "stopped”. Was würden wir schreiben, wenn uns nur die in Ausführung befindlichen Dienste interessieren? In diesem Fall verwenden wir den folgenden Befehl:
Get-Service | Where-Object {$_.status -eq "running"}
Welche Art Daten erhalten wir zurück, wenn wir nur Dienste abfragen, die momentan angehalten sind? Etwa die folgenden Daten:
Status Name DisplayName
------ ---- -----------
Stopped Alerter Alerter
Stopped AppMgmt Application Management
Stopped aspnet_state ASP.NET State Service
Stopped BITS Background Intelligent Transfer Ser...
Stopped Browser Computer Browser
Standardmäßig gibt Windows PowerShell die Dienste in alphabetischer Reihenfolge zurück. Mit Hilfe des Cmdlets Sort-Object können Sie die Daten jedoch beliebig sortieren. Der folgende Befehl beispielsweise sortiert Dienste zuerst nach dem Status und dann nach dem angezeigten Namen:
Get-Service | Sort-Object status,displayname
Aliase für "Get-Service"
- gsv