Get-Service

Modul: Microsoft.PowerShell.Management

Ruft die Dienste auf dem Computer ab.

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

-AbhängigeDienste

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
-DisplayName

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

-Exclude

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
-Include

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
-InputObject

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
-Name

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
-RequiredServices

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

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.