Get-Service
Ruft die Dienste auf dem Computer ab.
Syntax
Get-Service
[[-Name] <String[]>]
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Service
[-DependentServices]
[-RequiredServices]
-DisplayName <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Service
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[-InputObject <ServiceController[]>]
[<CommonParameters>]
Beschreibung
Das Get-Service
Cmdlet ruft Objekte ab, die die Dienste auf einem Computer darstellen, einschließlich ausgeführter und beendeter Dienste. Wenn ohne Parameter ausgeführt wird, werden standardmäßig Get-Service
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 an dieses Cmdlet übergeben.
Beispiele
Beispiel 1: Abrufen aller Dienste auf dem Computer
In diesem Beispiel werden alle Dienste auf dem Computer abgerufen. Es verhält sich so, als ob Sie eingegeben haben Get-Service *
. In der Standardanzeige werden der Status, der Dienstname und der Anzeigename der einzelnen Dienste angezeigt.
Get-Service
Beispiel 2: Abrufen von Diensten, die mit einer Suchzeichenfolge beginnen
In diesem Beispiel werden Dienste mit Dienstnamen abgerufen, die mit WMI (Windows-Verwaltungsinstrumentation) beginnen.
Get-Service "wmi*"
Beispiel 3: Anzeigen von Diensten, die eine Suchzeichenfolge enthalten
In diesem Beispiel werden Dienste mit einem Anzeigenamen angezeigt, der das Wort Netzwerk enthält. Beim Durchsuchen des Anzeigenamens werden netzwerkbezogene Dienste auch dann gefunden, wenn der Dienstname net nicht enthält, z. B. xmlprov, den 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 mit Dienstnamen abgerufen, die mit win beginnen, mit Ausnahme des WinRM-Diensts.
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 Wird ausgeführt angezeigt.
Get-Service | Where-Object {$_.Status -eq "Running"}
Get-Service
ruft alle Dienste auf dem Computer ab und sendet die Objekte nach unten in der Pipeline. Das Where-Object
Cmdlet wählt nur die Dienste mit einer Status-Eigenschaft aus, die gleich Wird ausgeführt ist.
%%amp;quot;Status%%amp;quot; ist nur eine der Eigenschaften von Dienstobjekten. Um alle Eigenschaften anzuzeigen, geben Sie ein Get-Service | Get-Member
.
Beispiel 6: Auflisten der Dienste auf dem Computer mit abhängigen Diensten
In diesem Beispiel werden Dienste abgerufen, die über abhängige Dienste verfügen.
Get-Service |
Where-Object {$_.DependentServices} |
Format-List -Property Name, DependentServices, @{
Label="NoOfDependentServices"; Expression={$_.dependentservices.count}
}
Name : AudioEndpointBuilder
DependentServices : {AudioSrv}
NoOfDependentServices : 1
Name : Dhcp
DependentServices : {WinHttpAutoProxySvc}
NoOfDependentServices : 1
...
Das Get-Service
Cmdlet ruft alle Dienste auf dem Computer ab und sendet die Objekte nach unten in der Pipeline. Das Where-Object
Cmdlet wählt die Dienste aus, deren DependentServices-Eigenschaft nicht NULL ist.
Die Ergebnisse werden in der Pipeline an das Format-List
Cmdlet gesendet. Der Parameter Property zeigt den Namen des Diensts, 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 beendete Dienste angezeigt werden, wenn Sie Dienste in aufsteigender Reihenfolge nach dem Wert ihrer Status-Eigenschaft sortieren, bevor Dienste ausgeführt werden. Der Grund dafür ist, dass der Wert von Status eine Enumeration ist, in der Stopped den Wert 1 und Running den Wert 4 hat. Weitere Informationen finden Sie unter ServiceControllerStatus.
Um zuerst ausgeführte Dienste auflisten zu können, verwenden Sie den Absteigenden Parameter des Sort-Object
Cmdlets.
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
Beispiel 8: Abrufen der abhängigen Dienste eines Diensts
In diesem Beispiel werden die Dienste abgerufen, die für den WinRM-Dienst erforderlich sind. Der Wert der ServicesDependedOn-Eigenschaft des Diensts wird zurückgegeben.
Get-Service "WinRM" -RequiredServices
Beispiel 9: Abrufen eines Diensts über den Pipelineoperator
In diesem Beispiel wird der WinRM-Dienst auf dem lokalen Computer abgerufen. Die in Anführungszeichen eingeschlossene Dienstnamenzeichenfolge wird in der Pipeline an Get-Service
gesendet.
"WinRM" | Get-Service
Parameter
-DependentServices
Gibt an, dass dieses Cmdlet nur die Dienste abruft, die vom angegebenen Dienst abhängen.
Type: | SwitchParameter |
Aliases: | DS |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisplayName
Gibt als Zeichenfolgenarray die Anzeigenamen der abzurufenden Dienste an. Platzhalter sind zulässig.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Exclude
Gibt als Zeichenfolgenarray einen Dienst (oder dienste) an, der von diesem Cmdlet vom Vorgang ausgeschlossen wird.
Der Wert dieses Parameters qualifiziert den Name-Parameter . Geben Sie ein Namenselement oder -muster ein, z s*
. B. . Platzhalter sind zulässig.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Include
Gibt als Zeichenfolgenarray einen Dienst(n) an, den dieses Cmdlet in den Vorgang einschließt. Der Wert dieses Parameters qualifiziert den Name-Parameter . Geben Sie ein Namenselement oder -muster ein, z s*
. B. . Platzhalter sind zulässig.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-InputObject
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 an dieses Cmdlet übergeben.
Type: | ServiceController[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Gibt die Dienstnamen der abzurufenden Dienste an. Platzhalter sind zulässig.
Type: | String[] |
Aliases: | ServiceName |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-RequiredServices
Gibt an, dass dieses Cmdlet nur die Dienste abruft, die für diesen Dienst erforderlich sind. Dieser Parameter ruft den Wert der ServicesDependedOn-Eigenschaft des Diensts ab.
Type: | SwitchParameter |
Aliases: | SDO, ServicesDependedOn |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
Eingaben
System.ServiceProcess.ServiceController, System.String
Sie können ein Dienstobjekt oder einen Dienstnamen an dieses Cmdlet übergeben.
Ausgaben
Dieses Cmdlet gibt Objekte zurück, die die Dienste auf dem Computer darstellen.
Hinweise
Dieses Cmdlet ist nur auf Windows-Plattformen verfügbar.
Ab PowerShell 6.0 werden den ServiceController-Objekten die folgenden Eigenschaften hinzugefügt: UserName, Description, DelayedAutoStart, BinaryPathName und StartupType .
Sie können auch auf den Get-Service
integrierten Alias verweisen. gsv
Weitere Informationen finden Sie unter about_Aliases.
Dieses Cmdlet kann Dienste nur anzeigen, wenn der aktuelle Benutzer über die Berechtigung verfügt, sie anzuzeigen. Wenn dieses Cmdlet keine Dienste anzeigt, verfügen Sie möglicherweise nicht über die Berechtigung, diese anzuzeigen.
Geben Sie ein, um den Dienstnamen und den Anzeigenamen der einzelnen Dienste in Ihrem System Get-Service
zu ermitteln. Die Dienstnamen werden in der Spalte Name und die Anzeigenamen in der Spalte DisplayName angezeigt.
Wenn Sie in aufsteigender Reihenfolge nach dem Wert der Status-Eigenschaft sortieren, werden beendete Dienste vor Ausgeführte Dienste angezeigt. Die Status-Eigenschaft des Diensts ist ein aufgezählter Wert, und die status Namen stellen ganzzahlige Werte dar. Die Sortierreihenfolge basiert auf dem ganzzahligen Wert, nicht auf dem Namen. Beendet wird vor angezeigt, da Running because Stopped den Wert 1 und Running den Wert 4 hat. Weitere Informationen finden Sie unter ServiceControllerStatus.