Ruft die Dienste auf dem Computer ab.
- Syntax
- Beschreibung
- Beispiele
- Beispiel 1: Abrufen aller Dienste auf dem Computer
- Beispiel 2: Abrufen von Diensten, die mit einer Suchzeichenfolge beginnen
- Beispiel 3: Anzeigen von Diensten, die eine Suchzeichenfolge enthalten
- Beispiel 4: Abrufen von Diensten, die mit einer Suchzeichenfolge und einem Ausschluss beginnen
- Beispiel 5: Anzeigen von Diensten, die derzeit aktiv sind
- Beispiel 6: Auflisten der Dienste auf dem Computer, die abhängige Dienste haben
- Beispiel 7: Sortieren von Diensten nach Eigenschaftswert
- Beispiel 8: Abrufen der abhängigen Dienste eines Dienstes
- Beispiel 9: Abrufen eines Dienstes über den Pipelineoperator
- Parameter
- Inputs
- Outputs
- Hinweise
Syntax
Get-Service <String>] >] >]
Get-Service -DisplayName <String> >] >]
Get-Service >] >] >]
Beschreibung
Das Cmdlet Get-Service
ruft Objekte ab, die die Dienste auf einem Computer darstellen, einschließlich laufender und angehaltener Dienste. Wenn Get-Service
ohne Parameter ausgeführt wird, werden standardmäßig alle Dienste des lokalen Computers zurückgegeben.
Sie können dieses Cmdlet anweisen, nur bestimmte Dienste abzurufen, indem Sie den Dienstnamen oder den Anzeigenamen der Dienste angeben, oder Sie können Dienstobjekte über die Pipeline an dieses Cmdlet übergeben.
Beispiele
Beispiel 1: Abrufen aller Dienste auf dem Computer
Dieses Beispiel ruft alle Dienste auf dem Computer ab. Es verhält sich so, als ob SieGet-Service *
eingegeben hätten. Die Standardanzeige zeigt den Status, den Dienstnamen und den Anzeigenamen jedes Dienstes an.
Get-Service
Beispiel 2: Abrufen von Diensten, die mit einer Suchzeichenfolge beginnen
Dieses Beispiel ruft Dienste mit Dienstnamen ab, die mit WMI (Windows ManagementInstrumentation) beginnen.
Get-Service "wmi*"
Beispiel 3: Anzeigen von Diensten, die eine Suchzeichenfolge enthalten
Dieses Beispiel zeigt Dienste mit einem Anzeigenamen an, der das Wort network enthält. Das Durchsuchen des Anzeigenamens findet netzwerkbezogene Dienste auch dann, wenn der Dienstname nicht “Net” enthält, wie z. B.xmlprov, der Netzwerkbereitstellungsdienst.
Get-Service -Displayname "*network*"
Beispiel 4: Abrufen von Diensten, die mit einer Suchzeichenfolge und einem Ausschluss beginnen
In diesem Beispiel werden nur die Dienste abgerufen, deren Dienstnamen mit win beginnen, mit Ausnahme des WinRM-Dienstes.
Get-Service -Name "win*" -Exclude "WinRM"
Beispiel 5: Anzeigen von Diensten, die derzeit aktiv sind
In diesem Beispiel werden nur die Dienste mit dem Status “Ausgeführt” angezeigt.
Get-Service | Where-Object {$_.Status -eq "Running"}
Get-Service
ruft alle Dienste auf dem Computer ab und sendet die Objekte in der Pipeline. Das Cmdlet “Where-Object
” wählt nur die Dienste mit der Eigenschaft “Status” aus, die den Wert “Running” hat.
Status ist nur eine Eigenschaft von Dienstobjekten. Um alle Eigenschaften anzuzeigen, geben SieGet-Service | Get-Member
.
Beispiel 6: Auflisten der Dienste auf dem Computer, die abhängige Dienste haben
In diesem Beispiel werden Dienste abgerufen, die abhängige Dienste haben.
Get-Service | Where-Object {$_.DependentServices} | Format-List -Property Name, DependentServices, @{ Label="NoOfDependentServices"; Expression={$_.dependentservices.count} }Name : AudioEndpointBuilderDependentServices : {AudioSrv}NoOfDependentServices : 1Name : DhcpDependentServices : {WinHttpAutoProxySvc}NoOfDependentServices : 1...
Das Cmdlet Get-Service
ruft alle Dienste auf dem Computer ab und sendet die Objekte über die Pipeline. Das Cmdlet Where-Object
wählt die Dienste aus, deren DependentServices-Eigenschaft nicht null ist.
Die Ergebnisse werden in der Pipeline an das Cmdlet Format-List
gesendet. Der Property-Parameter zeigt den Namen des Dienstes, den Namen der abhängigen Dienste und eine berechnete Eigenschaft an, die die Anzahl der abhängigen Dienste für jeden Dienst anzeigt.
Beispiel 7: Sortieren von Diensten nach Eigenschaftswert
Dieses Beispiel zeigt, dass beim Sortieren von Diensten in aufsteigender Reihenfolge nach dem Wert ihrer Status-Eigenschaft angehaltene Dienste vor laufenden Diensten angezeigt werden. Der Grund dafür ist, dass der Wert vonStatus eine Aufzählung ist, in der Gestoppt den Wert 1 und Ausgeführt den Wert 4 hat. Weitere Informationen finden Sie unterServiceControllerStatus.
Um laufende Dienste zuerst aufzulisten, verwenden Sie den Parameter Absteigend des Cmdlets Sort-Object
.
Get-Service "s*" | Sort-Object statusStatus Name DisplayName------ ---- -----------Stopped stisvc Windows Image Acquisition (WIA)Stopped SwPrv MS Software Shadow Copy ProviderStopped SysmonLog Performance Logs and AlertsRunning Spooler Print SpoolerRunning srservice System Restore ServiceRunning SSDPSRV SSDP Discovery ServiceRunning ShellHWDetection Shell Hardware DetectionRunning Schedule Task SchedulerRunning SCardSvr Smart CardRunning SamSs Security Accounts ManagerRunning SharedAccess Windows Firewall/Internet Connectio...Running SENS System Event NotificationRunning seclogon Secondary Logon
Beispiel 8: Abrufen der abhängigen Dienste eines Dienstes
In diesem Beispiel werden die Dienste abgerufen, die der WinRM-Dienst benötigt. Der Wert der EigenschaftServicesDependedOn des Dienstes wird zurückgegeben.
Get-Service "WinRM" -RequiredServices
Beispiel 9: Abrufen eines Dienstes über den Pipelineoperator
In diesem Beispiel wird der WinRM-Dienst auf dem lokalen Computer abgerufen. Die in Anführungszeichen eingeschlossene Zeichenfolge des Dienstnamens wird über die Pipeline an Get-Service
gesendet.
"WinRM" | Get-Service
Parameter
Gibt an, dass dieses Cmdlet nur die Dienste abruft, die vom angegebenen Dienst abhängen.
Typ: | SwitchParameter |
Aliases: | DS |
Position: | Benannt |
Standardwert: | Falsch |
Akzeptiere Pipeline-Eingabe: | False |
Accept wildcard characters: | False |
Spezifiziert, als String-Array, die Anzeigenamen der abzurufenden Dienste. Wildcards sind erlaubt.
Typ: | Zeichenkette |
Position: | Benannt |
Standardwert: | Keine |
Akzeptiere Pipeline-Eingabe: | False |
Accept wildcard characters: | True |
Gibt als Zeichenfolgenarray einen Dienst oder mehrere Dienste an, die dieses Cmdlet vom Vorgang ausschließt.Der Wert dieses Parameters qualifiziert den Name-Parameter. Geben Sie ein Namenselement oder -muster ein, z. B. s*
. Wildcards sind zulässig.
Typ: | Zeichenkette |
Position: | Benannt |
Standardwert: | Keine |
Akzeptiere Pipelineeingabe: | False |
Accept wildcard characters: | True |
Spezifiziert als Zeichenfolgenarray einen oder mehrere Dienste, die dieses Cmdlet in den Vorgang einschließt. Der Wert dieses Parameters qualifiziert den Name-Parameter. Geben Sie ein Namenselement oder -muster ein, z. B.s*
. Wildcards sind zulässig.
Typ: | Zeichenkette |
Position: | Name |
Standardwert: | Keine |
Akzeptiere Pipelineeingabe: | False |
Accept wildcard characters: | True |
Spezifiziert ServiceController-Objekte, die die abzurufenden Dienste darstellen. Geben Sie eine Variable ein, die die Objekte enthält, oder geben Sie einen Befehl oder Ausdruck ein, der die Objekte abruft. Sie können ein Dienstobjekt über die Pipeline an dieses Cmdlet übergeben.
Typ: | ServiceController |
Position: | Benannt |
Standardwert: | Keine |
Akzeptiere Pipelineeingabe: | True |
Accept wildcard characters: | False |
Spezifiziert die Dienstnamen der abzurufenden Dienste. Wildcards sind zulässig.
Typ: | String |
Aliases: | ServiceName |
Position: | 0 |
Standardwert: | Keine |
Akzeptiere Pipeline-Eingang: | True |
Accept wildcard characters: | True |
Gibt an, dass dieses Cmdlet nur die Dienste abruft, die dieser Dienst benötigt. Mit diesem Parameter wird der Wert der Eigenschaft “ServicesDependedOn” des Dienstes abgerufen.
Typ: | SwitchParameter |
Aliases: | SDO, ServicesDependedOn |
Position: | Named |
Standardwert: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
Inputs
System.ServiceProcess.ServiceController, System.String
Sie können ein Dienstobjekt oder einen Dienstnamen über die Pipeline an dieses Cmdlet übergeben.
Outputs
ServiceController
Dieses Cmdlet gibt Objekte zurück, die die Dienste auf dem Computer darstellen.
Hinweise
Dieses Cmdlet ist nur auf Windows-Plattformen verfügbar.
Seit PowerShell 6.0 werden die folgenden Eigenschaften zu den ServiceController-Objekten hinzugefügt: UserName, Description, DelayedAutoStart, BinaryPathName undStartupType.
Sie können sich auch auf Get-Service
über seinen integrierten Alias gsv
beziehen. Weitere Informationen finden Sie unterabout_Aliases.
Dieses Cmdlet kann Dienste nur anzeigen, wenn der aktuelle Benutzer die Berechtigung hat, sie zu sehen. Wenn dieses Cmdlet keine Dienste anzeigt, haben Sie möglicherweise keine Berechtigung, sie zu sehen.
Um den Dienstnamen und den Anzeigenamen jedes Dienstes auf Ihrem System zu finden, geben Sie Get-Service
ein. Die Dienstnamen werden in der Spalte Name angezeigt, die Anzeigenamen in der Spalte DisplayName.
Wenn Sie in aufsteigender Reihenfolge nach dem Wert der Eigenschaft Status sortieren, werden gestoppte Dienste vor laufenden Diensten angezeigt. Die Eigenschaft Status des Dienstes ist ein Aufzählungswert, und die Statusnamen stellen Ganzzahlwerte dar. Die Sortierreihenfolge basiert auf dem Ganzzahlwert, nicht auf dem Namen. Gestoppt erscheint vor Laufend, weil Gestoppt den Wert 1 hat und Laufend den Wert 4. Weitere Informationen finden Sie unterServiceControllerStatus.
- New-Service
- Restart-Service
- Resume-Service
- Set-Service
- Start-Service
- Stop-Service
- Suspend-Service
- Remove-Service