Delen via


Start-Service

Hiermee start u een of meer gestopte services.

Syntaxis

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

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
Aliassen:cf
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-DisplayName

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

Type:String[]
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren: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
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren: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
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren: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
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren: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[]
Aliassen:ServiceName
Position:0
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-PassThru

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

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

-WhatIf

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

Type:SwitchParameter
Aliassen:wi
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren: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

Windows PowerShell bevat de volgende aliassen voor Start-Service:

  • sasv

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