Share via


Start-Service

Hiermee start u een of meer gestopte services.

Syntax

Start-Service
     [-InputObject] <ServiceController[]>
     [-PassThru]
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-Service
     [-Name] <String[]>
     [-PassThru]
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-Service
     [-PassThru]
     -DisplayName <String[]>
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Description

Deze cmdlet is alleen beschikbaar op het Windows-platform.

De Start-Service cmdlet verzendt een beginbericht naar de Windows-servicecontroller voor elk van de opgegeven services. Als een service al wordt uitgevoerd, wordt het bericht zonder fouten genegeerd. U kunt de services opgeven op basis van hun servicenamen of weergavenamen, of u kunt de parameter InputObject gebruiken om een serviceobject op te geven dat de services vertegenwoordigt die u wilt starten.

Voorbeelden

Voorbeeld 1: Een service starten met behulp van de naam

In dit voorbeeld wordt de EventLog-service gestart op de lokale computer. De parameter Name identificeert de service op basis van de servicenaam.

Start-Service -Name "eventlog"

Voorbeeld 2: Informatie weergeven zonder een service te starten

In dit voorbeeld ziet u wat er zou gebeuren als u de services hebt gestart met een weergavenaam die 'extern' bevat.

Start-Service -DisplayName *remote* -WhatIf

De parameter DisplayName identificeert de services op basis van de weergavenaam in plaats van de servicenaam. De parameter WhatIf zorgt ervoor dat de cmdlet weergeeft wat er zou gebeuren wanneer u de opdracht uitvoert, maar geen wijzigingen aanbrengt.

Voorbeeld 3: Een service starten en de actie vastleggen in een tekstbestand

In dit voorbeeld wordt de WMI-service (Windows Management Instrumentation) op de computer gestart en wordt een record van de actie toegevoegd aan het services.txt-bestand.

$s = Get-Service wmi
Start-Service -InputObject $s -PassThru | Format-List >> services.txt

Eerst gebruiken Get-Service we om een object op te halen dat de WMI-service vertegenwoordigt en op te slaan in de $s variabele. Vervolgens starten we de service. Zonder de parameter Start-Service PassThru wordt geen uitvoer gemaakt. De pijplijnoperator (|) geeft de objectuitvoer door Start-Service aan de Format-List cmdlet om het object op te maken als een lijst met eigenschappen. De operator voor toevoegomleiding (>>) leidt de uitvoer om naar het services.txt-bestand. De uitvoer wordt toegevoegd aan het einde van het bestaande bestand.

Voorbeeld 4: Een uitgeschakelde service starten

In dit voorbeeld ziet u hoe u een service start wanneer het begintype van de service is uitgeschakeld.

PS> Start-Service tlntsvr
Start-Service : Service 'Telnet (TlntSvr)' cannot be started due to the following error: Cannot start service TlntSvr on computer '.'.
At line:1 char:14
+ Start-Service  <<<< tlntsvr

PS> Get-CimInstance win32_service | Where-Object Name -eq "tlntsvr"
ExitCode  : 0
Name      : TlntSvr
ProcessId : 0
StartMode : Disabled
State     : Stopped
Status    : OK

PS> Set-Service tlntsvr -StartupType manual
PS> Start-Service tlntsvr

De eerste poging om de Telnet-service (tlntsvr) te starten mislukt. De Get-CimInstance opdracht geeft aan dat de eigenschap StartMode van de Tlntsvr-service is uitgeschakeld. De Set-Service cmdlet wijzigt het begintype in Handmatig. Nu kunnen we de Start-Service opdracht opnieuw indienen. Deze keer slaagt de opdracht. Voer de opdracht uit Get-Serviceom te controleren of de opdracht is geslaagd.

Parameters

-Confirm

Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayName

Hiermee geeft u de weergavenamen van de services die moeten worden gestart. Jokertekens zijn toegestaan.

Type:String[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:True

-Exclude

Hiermee geeft u services op die deze cmdlet weglaat. 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
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Include

Hiermee geeft u services op die door deze cmdlet worden gestart. 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
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-InputObject

Hiermee geeft u ServiceController-objecten die de services vertegenwoordigen die moeten worden gestart. Voer een variabele in die de objecten bevat of typ een opdracht of expressie waarmee de objecten worden opgehaald.

Type:ServiceController[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Hiermee geeft u de servicenamen op voor de service die moet worden gestart.

De parameternaam is optioneel. U kunt Name of de alias, ServiceName gebruiken of u kunt de parameternaam weglaten.

Type:String[]
Aliases:ServiceName
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Retourneert een object dat de service vertegenwoordigt. Deze cmdlet genereert standaard geen uitvoer.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Invoerwaarden

ServiceController

U kunt een serviceobject doorsluisen naar deze cmdlet.

String

U kunt een tekenreeks met de servicenaam doorsluisen naar deze cmdlet.

Uitvoerwaarden

None

Deze cmdlet retourneert standaard geen uitvoer.

ServiceController

Wanneer u de parameter PassThru gebruikt, retourneert deze cmdlet een ServiceController-object dat de service vertegenwoordigt.

Notities

PowerShell bevat de volgende aliassen voor Start-Service:

  • Windows:
    • sasv

Deze cmdlet is alleen beschikbaar op Windows-platforms.

  • Start-Service kan alleen services beheren als de huidige gebruiker hiervoor gemachtigd is. Als een opdracht niet goed werkt, hebt u mogelijk niet de vereiste machtigingen.
  • Als u de servicenamen en weergavenamen van de services op uw systeem wilt vinden, typt Get-Serviceu . De servicenamen worden weergegeven in de kolom Naam en de weergavenamen worden weergegeven in de kolom DisplayName .
  • U kunt alleen de services starten met een starttype Handmatig, Automatisch of Automatisch (vertraagde start). U kunt de services met een starttype Uitgeschakeld niet starten. Als een Start-Service opdracht mislukt met het bericht Cannot start service \<service-name\> on computer, gebruikt Get-CimInstance u om het begintype van de service te vinden en, als dat nodig is, gebruikt u de Set-Service cmdlet om het begintype van de service te wijzigen.
  • Sommige services, zoals Prestatielogboeken en -waarschuwingen (SysmonLog), worden automatisch gestopt als ze geen werk hoeven te doen. Wanneer PowerShell een service start die zichzelf bijna onmiddellijk stopt, wordt het volgende bericht weergegeven: Service \<display-name\> start failed.