Delen via


Get-Service

Hiermee haalt u de services op een lokale of externe computer op.

Syntaxis

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

De Get-Service cmdlet haalt objecten op die de services op een lokale computer of op een externe computer vertegenwoordigen, inclusief actieve en gestopte services.

U kunt deze cmdlet omsturen om alleen bepaalde services op te halen door de servicenaam of de weergavenaam van de services op te geven, of u kunt serviceobjecten doorsturen naar deze cmdlet.

Voorbeelden

Voorbeeld 1: Alle services op de computer ophalen

Get-Service

Met deze opdracht worden alle services op de computer gedownload. Het gedraagt zich alsof je Get-Service *hebt getypt. In de standaardweergave worden de status, servicenaam en weergavenaam van elke service weergegeven.

Voorbeeld 2: Services ophalen die beginnen met een zoekreeks

Get-Service "wmi*"

Met deze opdracht worden services opgehaald met servicenamen die beginnen met WMI (het acroniem voor Windows Management Instrumentation).

Voorbeeld 3: Services weergeven die een zoekreeks bevatten

Get-Service -Displayname "*network*"

Met deze opdracht worden services weergegeven met een weergavenaam die het woordnetwerk bevat. Door te zoeken in de weergavenaam worden netwerkgerelateerde services gevonden, zelfs als de servicenaam geen 'Net' bevat, zoals xmlprov, de Network Provisioning Service.

Voorbeeld 4: Services ophalen die beginnen met een zoekreeks en een uitsluiting

Get-Service -Name "win*" -Exclude "WinRM"

Deze opdrachten krijgen alleen de services met servicenamen die beginnen met win, met uitzondering van de WinRM-service.

Voorbeeld 5: Services weergeven die momenteel actief zijn

Get-Service | Where-Object {$_.Status -eq "Running"}

Met deze opdracht worden alleen de services weergegeven die momenteel actief zijn. Hierbij wordt de cmdlet Get-Service gebruikt om alle services op de computer op te halen. De pijplijnoperator (|) geeft de resultaten door aan de cmdlet Where-Object, waarmee alleen de services worden geselecteerd met een eigenschap Status die gelijk is aan Actief.

Status is slechts één eigenschap van serviceobjecten. Als u alle eigenschappen wilt zien, typt u Get-Service | Get-Member.

Voorbeeld 6: De services op een externe computer ophalen

Get-Service -ComputerName "Server02"

Met deze opdracht worden de services op de externe Server02-computer ophaalt.

Omdat de parameter ComputerName van Get-Service- geen externe communicatie van Windows PowerShell gebruikt, kunt u deze parameter gebruiken, zelfs als de computer niet is geconfigureerd voor externe communicatie in Windows PowerShell.

Voorbeeld 7: De services weergeven op de lokale computer met afhankelijke services

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

De eerste opdracht maakt gebruik van de cmdlet Get-Service om de services op de computer op te halen. Een pijplijnoperator (|) verzendt de services naar de cmdlet Where-Object, waarmee de services worden geselecteerd waarvan de eigenschap DependentServices niet null is.

Een andere pijplijnoperator verzendt de resultaten naar de Format-List-cmdlet. De opdracht gebruikt de parameter Eigenschap om de naam van de service, de naam van de afhankelijke services en een berekende eigenschap weer te geven die het aantal afhankelijke services weergeeft dat elke service heeft.

Voorbeeld 8: Services sorteren op eigenschapswaarde

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

Met deze opdracht ziet u dat wanneer u services in oplopende volgorde sorteert op basis van de waarde van de eigenschap Status, de services worden gestopt voordat services worden uitgevoerd. Dit gebeurt omdat de waarde van Status een opsomming is, waarin Gestopt een waarde van 1 heeft en Wordt uitgevoerd een waarde van 4 heeft.

Als u eerst actieve services wilt weergeven, gebruikt u de parameter Aflopend van de cmdlet Sort-Object.

Voorbeeld 9: Services op meerdere computers ophalen

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)

Met deze opdracht wordt de cmdlet Get-Service gebruikt om een Get-Service Winrm-opdracht uit te voeren op twee externe computers en de lokale computer ('localhost').

De opdracht wordt uitgevoerd op de externe computers en de resultaten worden geretourneerd naar de lokale computer. Een pijplijnoperator (|) verzendt de resultaten naar de cmdlet Format-Table, waarmee de services worden opgemaakt als een tabel. De opdracht Format-Table gebruikt de parameter Eigenschap om de eigenschappen op te geven die in de tabel worden weergegeven, inclusief de eigenschap MachineName.

Voorbeeld 10: De afhankelijke services van een service ophalen

Get-Service "WinRM" -RequiredServices

Met deze opdracht worden de services die de WinRM-service vereist, ophaalt.

De opdracht retourneert de waarde van de eigenschap ServicesDependedOn van de service.

Voorbeeld 11: Een service ophalen via de pijplijnoperator

"WinRM" | Get-Service

Met deze opdracht haalt u de WinRM-service op de lokale computer op. In dit voorbeeld ziet u dat u een servicenaamtekenreeks (tussen aanhalingstekens) kunt doorsluisen naar Get-Service-.

Parameters

-ComputerName

Hiermee worden de services op de opgegeven computers uitgevoerd. De standaardwaarde is de lokale computer.

Typ de NetBIOS-naam, een IP-adres of een FQDN (Fully Qualified Domain Name) van een externe computer. Als u de lokale computer wilt opgeven, typt u de computernaam, een punt (.) of localhost.

Deze parameter is niet afhankelijk van externe communicatie met Windows PowerShell. U kunt de parameter ComputerName van Get-Service- gebruiken, zelfs als uw computer niet is geconfigureerd voor het uitvoeren van externe opdrachten.

Type:String[]
Aliassen:Cn
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-DependentServices

Geeft aan dat deze cmdlet alleen de services ophaalt die afhankelijk zijn van de opgegeven service.

Deze cmdlet haalt standaard alle services op.

Type:SwitchParameter
Aliassen:DS
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-DisplayName

Hiermee geeft u, als tekenreeksmatrix, de weergavenamen van services die moeten worden opgehaald. Jokertekens zijn toegestaan. Deze cmdlet haalt standaard alle services op de computer op.

Type:String[]
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-Exclude

Hiermee geeft u op, als een tekenreeksmatrix, een service of services die door deze cmdlet worden uitgesloten van de bewerking. De waarde van deze parameter komt in aanmerking voor de parameter Name. Voer een naamelement of patroon in, zoals 's*'. Jokertekens zijn toegestaan.

Type:String[]
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-Include

Hiermee geeft u, als tekenreeksmatrix, een service of services op die deze cmdlet in de bewerking bevat. De waarde van deze parameter komt in aanmerking voor de parameter Name. Voer een naamelement of patroon in, zoals 's*'. Jokertekens zijn toegestaan.

Type:String[]
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-InputObject

Hiermee geeft u ServiceController objecten die de services vertegenwoordigen die moeten worden opgehaald. Voer een variabele in die de objecten bevat of typ een opdracht of expressie waarmee de objecten worden opgehaald. U kunt ook een serviceobject doorsluisen naar deze cmdlet.

Type:ServiceController[]
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Name

Hiermee geeft u de servicenamen van services die moeten worden opgehaald. Jokertekens zijn toegestaan. Deze cmdlet haalt standaard alle services op de computer op.

Type:String[]
Aliassen:ServiceName
Position:0
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:True

-RequiredServices

Geeft aan dat deze cmdlet alleen de services krijgt die deze service nodig heeft.

Met deze parameter wordt de waarde opgehaald van de eigenschap ServicesDependedOn van de service. Deze cmdlet haalt standaard alle services op.

Type:SwitchParameter
Aliassen:SDO, ServicesDependedOn
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

Invoerwaarden

System.ServiceProcess.ServiceController, System.String

U kunt een serviceobject of een servicenaam doorsluisen naar deze cmdlet.

Uitvoerwaarden

ServiceController

Met deze cmdlet worden objecten geretourneerd die de services op de computer vertegenwoordigen.

Notities

U kunt ook verwijzen naar Get-Service- door de ingebouwde alias gsv. Zie about_Aliases voor meer informatie.

Met deze cmdlet kunnen services alleen worden weergegeven wanneer de huidige gebruiker gemachtigd is om deze te zien. Als deze cmdlet geen services weergeeft, bent u mogelijk niet gemachtigd om deze te zien.

Als u de servicenaam en weergavenaam van elke service op uw systeem wilt vinden, typt u Get-Service. De servicenamen worden weergegeven in de kolom Naam en de weergavenamen worden weergegeven in de kolom DisplayName.

Wanneer u in oplopende volgorde sorteert op statuswaarde, worden 'Gestopt'-services weergegeven vóór 'Actieve' services. De eigenschap Status van een service is een geïnventariseerd waarde waarin de namen van de statuswaarden gehele getallen vertegenwoordigen. De sortering is gebaseerd op de gehele waarde, niet op de naam. 'Wordt uitgevoerd' wordt weergegeven voor 'Gestopt' omdat 'Gestopt' een waarde van '1' heeft en 'Actief' een waarde van '4' heeft.