Get-Service
Ruft die Dienste auf einem lokalen Computer oder einem Remotecomputer ab.
Syntax
Get-Service [[-Name] <string[]>] [-ComputerName <string[]>] [-DependentServices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [<CommonParameters>]
Get-Service -DisplayName <string[]> [-ComputerName <string[]>] [-DependentServices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [<CommonParameters>]
Get-Service [-InputObject <ServiceController[]>] [-ComputerName <string[]>] [-DependentServices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [<CommonParameters>]
Beschreibung
Mit dem Cmdlet "Get-Service" werden Objekte abgerufen, die die Dienste auf einem lokalen Computer oder einem Remotecomputer darstellen, einschließlich ausgeführter und beendeter Dienste.
Sie können Get-Service anweisen, nur bestimmte Dienste abzurufen, indem Sie den Dienstnamen oder Anzeigenamen der Dienste angeben, oder Sie können Dienstobjekte über die Pipeline an Get-Service übergeben.
Parameter
-ComputerName <string[]>
Ruft die Dienste ab, die auf den angegebenen Computern ausgeführt werden. Der Standardwert ist der lokale Computer.
Geben Sie den NetBIOS-Namen, eine IP-Adresse oder den vollqualifizierten Domänennamen eines Remotecomputers ein. Um den lokalen Computer anzugeben, geben Sie den Computernamen, einen Punkt (.) oder "localhost" ein.
Dieser Parameter beruht nicht auf Windows PowerShell-Remoting. Sie können den ComputerName-Parameter von Get-Service auch dann verwenden, wenn der Computer nicht für das Ausführen von Remotebefehlen konfiguriert ist.
Erforderlich? |
false |
Position? |
named |
Standardwert |
Localhost |
Pipelineeingaben akzeptieren? |
true (ByPropertyName) |
Platzhalterzeichen akzeptieren? |
false |
-DependentServices
Ruft nur die Dienste ab, die vom angegebenen Dienst abhängig sind.
Standardmäßig werden mit Get-Service alle Dienste abgerufen.
Erforderlich? |
false |
Position? |
named |
Standardwert |
False |
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-DisplayName <string[]>
Gibt die Anzeigenamen der abzurufenden Dienste an. Platzhalter sind zulässig. Standardmäßig werden mit Get-Service alle Dienste auf dem Computer abgerufen.
Erforderlich? |
true |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Exclude <string[]>
Lässt die angegebenen Dienste aus. Der Name-Parameter wird durch den Wert dieses Parameters qualifiziert. Geben Sie ein Namenselement oder -muster wie "s*" ein. Platzhalter sind zulässig.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Include <string[]>
Ruft nur die angegebenen Dienste ab. Der Name-Parameter wird durch den Wert dieses Parameters qualifiziert. Geben Sie ein Namenselement oder -muster wie "s*" ein. Platzhalter sind zulässig.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-InputObject <ServiceController[]>
Gibt ServiceController-Objekte an, die die abzurufenden Dienste darstellen. Geben Sie eine Variable ein, die die Objekte enthält, oder geben Sie einen Befehl oder einen Ausdruck ein, mit dem die Objekte abgerufen werden. Sie können ein Dienstobjekt auch über die Pipeline an Get-Service übergeben.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
true (ByValue) |
Platzhalterzeichen akzeptieren? |
false |
-Name <string[]>
Gibt die Dienstnamen der abzurufenden Dienste an. Platzhalter sind zulässig. Standardmäßig werden mit Get-Service alle Dienste auf dem Computer abgerufen.
Erforderlich? |
false |
Position? |
1 |
Standardwert |
|
Pipelineeingaben akzeptieren? |
true (ByValue, ByPropertyName) |
Platzhalterzeichen akzeptieren? |
true |
-RequiredServices
Ruft nur die Dienste ab, die für diesen Dienst erforderlich sind.
Dieser Parameter ruft den Wert der ServicesDependedOn-Eigenschaft des Diensts ab. Standardmäßig werden mit Get-Service alle Dienste abgerufen.
Erforderlich? |
false |
Position? |
named |
Standardwert |
False |
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
<CommonParameters>
Dieses Cmdlet unterstützt die folgenden allgemeinen Parameter: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer und -OutVariable. Weitere Informationen finden Sie unter about_Commonparameters.
Eingaben und Ausgaben
Der Eingabetyp ist der Typ der Objekte, die über die Pipeline an das Cmdlet übergeben werden können. Der Rückgabetyp ist der Typ der Objekte, die das Cmdlet zurückgibt.
Eingaben |
System.ServiceProcess.ServiceController, System.String Sie können ein Dienstobjekt oder einen Dienstnamen über die Pipeline an Get-Service übergeben. |
Ausgaben |
System.ServiceProcess.ServiceController Get-Service gibt Objekte zurück, die die Dienste auf dem Computer darstellen. |
Hinweise
Sie können auch über den integrierten Alias "gsv" auf Get-Service verweisen. Weitere Informationen finden Sie unter "about_Aliases".
Mit Get-Service können nur dann Dienste angezeigt werden, wenn der aktuelle Benutzer dazu berechtigt ist. Wenn von Get-Service keine Dienste angezeigt werden, verfügen Sie u. U. nicht über die entsprechenden Anzeigeberechtigungen.
Geben Sie "get-service" ein, um den Dienstnamen und den Anzeigenamen der einzelnen Dienste auf dem System zu suchen. Die Dienstnamen werden in der Spalte "Name" und die Anzeigenamen in der Spalte "DisplayName" aufgeführt.
Wenn Sie aufsteigend nach Statuswert sortieren, werden Dienste mit dem Status "Stopped" vor Diensten mit dem Status "Angezeigt" angezeigt. Die Status-Eigenschaft eines Diensts ist ein Enumerationswert, in dem die Namen der Status ganzzahlige Werte darstellen. Die Sortierung basiert auf dem ganzzahligen Wert, nicht dem Namen. "Running" wird vor "Stopped" angezeigt, da "Stopped" über den Wert "1" verfügt; "Running" verfügt über den Wert "4".
Beispiel 1
C:\PS>get-service
Beschreibung
-----------
Mit diesem Befehl werden alle Dienste auf dem System abgerufen. Das Verhalten entspricht der Eingabe von "get-service *". In der Standardanzeige werden der Status, der Dienstname und der Anzeigename der einzelnen Dienste angezeigt.
Beispiel 2
C:\PS>get-service wmi*
Beschreibung
-----------
Mit diesem Befehl werden Dienste abgerufen, deren Dienstnamen mit "WMI" beginnen (der Abkürzung für Windows Management Instrumentation = Windows-Verwaltungsinstrumentation).
Beispiel 3
C:\PS>get-service -displayname *network*
Beschreibung
-----------
Mit diesem Befehl werden Dienste angezeigt, deren Anzeigename das Wort
"network" enthält. Durch das Suchen des Anzeigenamens können Sie Netzwerkdienste suchen, selbst wenn der Dienstname nicht das Wort "Net" enthält, beispielsweise "xmlprov" (der Netzwerkbereitstellungsdienst).
Beispiel 4
C:\PS>get-service -name win* -exclude winrm
Beschreibung
-----------
Diese Befehle rufen nur die Dienste ab, deren Dienstnamen mit "win" beginnen, mit Ausnahme des WinRM-Diensts.
Beispiel 5
C:\PS>get-service | where-object {$_.Status -eq "Running"}
Beschreibung
-----------
Mit diesem Befehl werden nur die Dienste angezeigt, die derzeit ausgeführt werden. Er verwendet das Cmdlet "Get-Service", um alle Dienste auf dem Computer abzurufen. Der Pipelineoperator (|) übergibt die Ergebnisse an das Cmdlet "Where-Object", das nur die Dienste auswählt, deren Status-Eigenschaft gleich "Running" ist.
"Status" ist nur eine der Eigenschaften von Dienstobjekten. Um alle Eigenschaften anzuzeigen, geben Sie "get-service | get-member" ein.
Beispiel 6
C:\PS>get-service -computername Server02
Beschreibung
-----------
Dieser Befehl ruft die Dienste auf dem Remotecomputer "Server02" ab.
Da der ComputerName-Parameter von Get-Service kein Windows PowerShell-Remoting verwendet, können Sie den Parameter auch dann verwenden, wenn der Computer nicht für Remoting in Windows PowerShell konfiguriert ist.
Beispiel 7
C:\PS>get-service | where-object {$_.DependentServices} | format-list -property Name, DependentServices, @{Label="NoOfDependentS
ervices"; Expression={$_.dependentservices.count}}
Name : AudioEndpointBuilder
DependentServices : {AudioSrv}
NoOfDependentServices : 1
Name : Dhcp
DependentServices : {WinHttpAutoProxySvc}
NoOfDependentServices : 1
...
Beschreibung
-----------
Diese Befehle führen die Dienste auf dem Computer auf, die über abhängige Dienste verfügen.
Im ersten Befehl werden mit dem Cmdlet "Get-Service" die Dienste auf dem Computer abgerufen. Ein Pipelineoperator (|) sendet die Dienste an das Cmdlet "Where-Object", das die Dienste auswählt, deren DependentServices-Eigenschaft nicht NULL ist.
Die Ergebnisse werden mit einem anderen Pipelineoperator an das Cmdlet "Format-List" gesendet. Der Befehl zeigt mit dem Property-Parameter den Namen des Diensts, die Namen der abhängigen Dienste und eine berechnete Eigenschaft an, die die Anzahl von abhängigen Diensten für jeden Dienst anzeigt.
Beispiel 8
C:\PS>C:\PS> get-service s* | sort-object status
Status Name DisplayName
------ ---- -----------
Stopped stisvc Windows Image Acquisition (WIA)
Stopped SwPrv MS Software Shadow Copy Provider
Stopped SysmonLog Performance Logs and Alerts
Running Spooler Print Spooler
Running srservice System Restore Service
Running SSDPSRV SSDP Discovery Service
Running ShellHWDetection Shell Hardware Detection
Running Schedule Task Scheduler
Running SCardSvr Smart Card
Running SamSs Security Accounts Manager
Running SharedAccess Windows Firewall/Internet Connectio...
Running SENS System Event Notification
Running seclogon Secondary Logon
C:\PS> get-service s* | sort-object status -descending
Status Name DisplayName
------ ---- -----------
Running ShellHWDetection Shell Hardware Detection
Running SharedAccess Windows Firewall/Internet Connectio...
Running Spooler Print Spooler
Running SSDPSRV SSDP Discovery Service
Running srservice System Restore Service
Running SCardSvr Smart Card
Running SamSs Security Accounts Manager
Running Schedule Task Scheduler
Running SENS System Event Notification
Running seclogon Secondary Logon
Stopped SysmonLog Performance Logs and Alerts
Stopped SwPrv MS Software Shadow Copy Provider
Stopped stisvc Windows Image Acquisition (WIA)
Beschreibung
-----------
Dieser Befehl zeigt, dass beim Sortieren von Diensten in aufsteigender Reihenfolge nach dem Wert der Status-Eigenschaft beendete Dienste vor ausgeführten Diensten angezeigt werden. Dies liegt daran, dass der Wert von "Status" eine Aufzählung ist, in der "Stopped" über den Wert "1" und "Running" über den Wert "4" verfügt.
Wenn ausgeführte Dienste zuerst aufgeführt werden sollen, verwenden Sie den Descending-Parameter des Cmdlets "Sort-Object".
Beispiel 9
C:\PS>get-service -name winrm -computername localhost, Server01, Server02 | format-table -property MachineName, Status, Name, DisplayName -auto
MachineName Status Name DisplayName
------------ ------ ---- -----------
localhost Running WinRM Windows Remote Management (WS-Management)
Server01 Running WinRM Windows Remote Management (WS-Management)
Server02 Running WinRM Windows Remote Management (WS-Management)
Beschreibung
-----------
Dieser Befehl führt mit dem Cmdlet "Get-Service" den Befehl "Get-Service Winrm" auf zwei Remotecomputern und dem lokalen Computer ("localhost") aus.
Der Befehl "Get-Service" wird auf den Remotecomputern ausgeführt, und die Ergebnisse werden an den lokalen Computer zurückgegeben. Mit dem Pipelineoperator (|) werden die Ergebnisse an das Cmdlet "Format-Table" übergeben, das die Dienste als Tabelle formatiert. Der Befehl "Format-Table" gibt mit dem Property-Parameter die in der Tabelle angezeigten Eigenschaften an, einschließlich der MachineName-Eigenschaft.
Beispiel 10
C:\PS>get-service winrm -requiredServices
Beschreibung
-----------
Mit diesem Befehl werden die für den WinRM-Dienst erforderlichen Dienste abgerufen.
Der Befehl gibt den Wert der ServicesDependedOn-Eigenschaft für den Dienst zurück.
Beispiel 11
C:\PS>"winrm" | get-service
Beschreibung
-----------
Mit diesem Befehl wird der WinRM-Dienst auf dem lokalen Computer abgerufen. In diesem Beispiel wird veranschaulicht, dass Sie eine Dienstnamenzeichenfolge (in Anführungszeichen) über die Pipeline an Get-Service übergeben können.
Siehe auch
Konzepte
Start-Service
Stop-Service
Restart-Service
Resume-Service
Suspend-Service
Set-Service
New-Service