Get-Service
Hämtar tjänsterna på en lokal dator eller fjärrdator.
Syntax
Get-Service
[[-Name] <String[]>]
[-ComputerName <String[]>]
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Service
[-ComputerName <String[]>]
[-DependentServices]
[-RequiredServices]
-DisplayName <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Service
[-ComputerName <String[]>]
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[-InputObject <ServiceController[]>]
[<CommonParameters>]
Description
Cmdleten Get-Service hämtar objekt som representerar tjänsterna på en lokal dator eller på en fjärrdator, inklusive körning och stoppade tjänster.
Du kan dirigera den här cmdleten så att endast vissa tjänster hämtas genom att ange tjänstnamnet eller visningsnamnet för tjänsterna, eller så kan du skicka serviceobjekt till den här cmdleten.
Exempel
Exempel 1: Hämta alla tjänster på datorn
Get-Service
Det här kommandot hämtar alla tjänster på datorn.
Det beter sig som om du skrev Get-Service *
.
Standardvisningen visar status, tjänstnamn och visningsnamn för varje tjänst.
Exempel 2: Hämta tjänster som börjar med en söksträng
Get-Service "wmi*"
Det här kommandot hämtar tjänster med tjänstnamn som börjar med WMI (förkortningen för Windows Management Instrumentation).
Exempel 3: Visa tjänster som innehåller en söksträng
Get-Service -Displayname "*network*"
Det här kommandot visar tjänster med ett visningsnamn som innehåller ordet nätverk. Genom att söka i visningsnamnet hittar du nätverksrelaterade tjänster även när tjänstnamnet inte innehåller "Net", till exempel xmlprov, Network Provisioning Service.
Exempel 4: Hämta tjänster som börjar med en söksträng och ett undantag
Get-Service -Name "win*" -Exclude "WinRM"
Dessa kommandon hämtar endast de tjänster med tjänstnamn som börjar med win, förutom WinRM-tjänsten.
Exempel 5: Visa tjänster som för närvarande är aktiva
Get-Service | Where-Object {$_.Status -eq "Running"}
Det här kommandot visar endast de tjänster som för närvarande är aktiva. Den använder cmdleten Get-Service för att hämta alla tjänster på datorn. Pipelineoperatorn (|) skickar resultatet till cmdleten Where-Object, som endast väljer de tjänster med en statusegenskap som är lika med Körs.
Status är bara en egenskap för tjänstobjekt.
Om du vill se alla egenskaper skriver du Get-Service | Get-Member
.
Exempel 6: Hämta tjänsterna på en fjärrdator
Get-Service -ComputerName "Server02"
Det här kommandot hämtar tjänsterna på server02-fjärrdatorn.
Eftersom parametern ComputerName för Get-Service inte använder Windows PowerShell-fjärrkommunikation kan du använda den här parametern även om datorn inte har konfigurerats för fjärrkommunikation i Windows PowerShell.
Exempel 7: Lista de tjänster på den lokala datorn som har beroende tjänster
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
...
Det första kommandot använder cmdleten Get-Service för att hämta tjänsterna på datorn. En pipelineoperator (|) skickar tjänsterna till cmdleten Where-Object, som väljer de tjänster vars DependentServices-egenskapen inte är null.
En annan pipelineoperator skickar resultatet till cmdleten Format-List. Kommandot använder parametern Egenskap för att visa namnet på tjänsten, namnet på de beroende tjänsterna och en beräknad egenskap som visar antalet beroende tjänster som varje tjänst har.
Exempel 8: Sortera tjänster efter egenskapsvärde
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
Det här kommandot visar att när du sorterar tjänster i stigande ordning efter värdet för egenskapen Status visas stoppade tjänster innan tjänsterna körs. Detta beror på att värdet för Status är en uppräkning, där Stopped har värdet 1 och Körning har värdet 4.
Om du vill visa en lista över tjänster som körs först använder du parametern fallande i cmdleten Sort-Object.
Exempel 9: Hämta tjänster på flera datorer
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)
Det här kommandot använder cmdleten Get-Service för att köra ett Get-Service Winrm-kommando på två fjärrdatorer och den lokala datorn ("localhost").
Kommandot körs på fjärrdatorerna och resultatet returneras till den lokala datorn. En pipelineoperator (|) skickar resultatet till cmdleten Format-Table som formaterar tjänsterna som en tabell. Kommandot Format-Table använder parametern Property för att ange de egenskaper som visas i tabellen, inklusive egenskapen MachineName.
Exempel 10: Hämta beroende tjänster för en tjänst
Get-Service "WinRM" -RequiredServices
Det här kommandot hämtar de tjänster som WinRM-tjänsten kräver.
Kommandot returnerar värdet för egenskapen ServicesDependedOn för tjänsten.
Exempel 11: Hämta en tjänst via pipelineoperatorn
"WinRM" | Get-Service
Det här kommandot hämtar WinRM-tjänsten på den lokala datorn. Det här exemplet visar att du kan skicka en tjänstnamnssträng (omgiven inom citattecken) till Get-Service-.
Parametrar
-ComputerName
Hämtar tjänsterna som körs på de angivna datorerna. Standardvärdet är den lokala datorn.
Ange NetBIOS-namnet, en IP-adress eller ett fullständigt domännamn (FQDN) för en fjärrdator. Om du vill ange den lokala datorn skriver du datornamnet, en punkt (.) eller localhost.
Den här parametern förlitar sig inte på Windows PowerShell-fjärrkommunikation. Du kan använda parametern ComputerName för Get-Service även om datorn inte är konfigurerad för att köra fjärrkommandon.
Typ: | String[] |
Alias: | Cn |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-DependentServices
Anger att denna cmdlet endast hämtar de tjänster som är beroende av den angivna tjänsten.
Som standard hämtar den här cmdleten alla tjänster.
Typ: | SwitchParameter |
Alias: | DS |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-DisplayName
Anger visningsnamnen för tjänster som ska hämtas som en strängmatris. Jokertecken tillåts. Som standard hämtar den här cmdleten alla tjänster på datorn.
Typ: | String[] |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-Exclude
Anger, som en strängmatris, en tjänst eller tjänster som denna cmdlet exkluderar från åtgärden. Värdet för den här parametern kvalificerar parametern Name. Ange ett namnelement eller mönster, till exempel "s*". Jokertecken tillåts.
Typ: | String[] |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-Include
Anger, som en strängmatris, en tjänst eller tjänster som den här cmdleten innehåller i åtgärden. Värdet för den här parametern kvalificerar parametern Name. Ange ett namnelement eller mönster, till exempel "s*". Jokertecken tillåts.
Typ: | String[] |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-InputObject
Anger ServiceController objekt som representerar de tjänster som ska hämtas. Ange en variabel som innehåller objekten eller skriv ett kommando eller uttryck som hämtar objekten. Du kan också skicka ett tjänstobjekt till den här cmdleten.
Typ: | ServiceController[] |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Name
Anger tjänstnamnen för tjänster som ska hämtas. Jokertecken tillåts. Som standard hämtar den här cmdleten alla tjänster på datorn.
Typ: | String[] |
Alias: | ServiceName |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | True |
-RequiredServices
Anger att den här cmdleten endast hämtar de tjänster som krävs för den här tjänsten.
Den här parametern hämtar värdet för egenskapen ServicesDependedOn för tjänsten. Som standard hämtar den här cmdleten alla tjänster.
Typ: | SwitchParameter |
Alias: | SDO, ServicesDependedOn |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
Indata
System.ServiceProcess.ServiceController, System.String
Du kan skicka ett tjänstobjekt eller ett tjänstnamn till den här cmdleten.
Utdata
Den här cmdleten returnerar objekt som representerar tjänsterna på datorn.
Kommentarer
Du kan också referera till Get-Service- med det inbyggda aliaset "gsv". Mer information finns i about_Aliases.
Den här cmdleten kan endast visa tjänster när den aktuella användaren har behörighet att se dem. Om den här cmdleten inte visar tjänster kanske du inte har behörighet att se dem.
Om du vill hitta tjänstnamnet och visningsnamnet för varje tjänst i systemet skriver du Get-Service
.
Tjänstnamnen visas i kolumnen Namn och visningsnamnen visas i kolumnen DisplayName.
När du sorterar i stigande ordning efter statusvärde visas "Stoppade" tjänster före "Körs"-tjänster. Statusegenskapen för en tjänst är ett uppräknat värde där namnen på statusarna representerar heltalsvärden. Sorteringen baseras på heltalsvärdet, inte namnet. "Körs" visas före "Stoppad" eftersom "Stoppad" har värdet "1" och "Running" har värdet "4".