Restart-Service
Beendet Dienste und startet diese anschließend.
Syntax
Restart-Service
[-Force]
[-InputObject] <ServiceController[]>
[-PassThru]
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restart-Service
[-Force]
[-Name] <String[]>
[-PassThru]
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restart-Service
[-Force]
[-PassThru]
-DisplayName <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Restart-Service
Cmdlet sendet eine Stoppmeldung und dann eine Startnachricht an den Windows Service Controller für einen angegebenen Dienst. Wenn ein Dienst bereits beendet wurde, wird er gestartet, ohne dass ein Fehler ausgegeben wird. Sie können die Dienste anhand ihrer Dienstnamen oder Anzeigenamen angeben, oder Sie können den InputObject-Parameter verwenden, um ein Objekt zu übergeben, das jeden Dienst darstellt, den Sie neu starten möchten.
Beispiele
Beispiel 1: Neustarten eines Diensts auf dem lokalen Computer
PS C:\> Restart-Service -Name winmgmt
Mit diesem Befehl wird der WMI-Dienst (WinMgmt) auf dem lokalen Computer neu gestartet.
Beispiel 2: Ausschließen eines Diensts
PS C:\> Restart-Service -DisplayName "net*" -Exclude "net logon"
Mit diesem Befehl werden die Dienste neu gestartet, die einen Anzeigenamen aufweisen, der mit Net beginnt, mit Ausnahme des Net-Anmeldediensts.
Beispiel 3: Starten aller beendeten Netzwerkdienste
PS C:\> Get-Service -Name "net*" | Where-Object {$_.Status -eq "Stopped"} | Restart-Service
Mit diesem Befehl werden alle beendeten Netzwerkdienste auf dem Computer gestartet.
Dieser Befehl verwendet das Get-Service
Cmdlet, um Objekte abzurufen, die die Dienste darstellen, deren Dienstname mit net beginnt. Der Pipelineoperator (|
) sendet das Dienstobjekt an das Where-Object
Cmdlet, das nur die Dienste auswählt, die einen Status des Beendens aufweisen. Ein anderer Pipelinebetreiber sendet die ausgewählten Dienste an Restart-Service
.
In der Praxis würden Sie den WhatIf-Parameter verwenden, um die Wirkung des Befehls zu bestimmen, bevor Sie ihn ausführen.
Parameter
-Confirm
Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.
Typ: | SwitchParameter |
Aliase: | cf |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-DisplayName
Gibt die Anzeigenamen der dienste an, die neu gestartet werden sollen. Platzhalterzeichen sind zulässig.
Typ: | String[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | True |
-Exclude
Gibt Dienste an, die von diesem Cmdlet weggelassen werden. Der Wert dieses Parameters qualifiziert den Name-Parameter . Geben Sie ein Namenselement oder ein Muster ein, z. B. s*. Platzhalterzeichen sind zulässig.
Typ: | String[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | True |
-Force
Erzwingt die Ausführung des Befehls ohne Aufforderung zur Bestätigung durch den Benutzer.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Include
Gibt Dienste an, die dieses Cmdlet neu startet. Der Wert dieses Parameters qualifiziert den Name-Parameter . Geben Sie ein Namenselement oder ein Muster ein, z. B. s*. Platzhalterzeichen sind zulässig.
Typ: | String[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | True |
-InputObject
Gibt ServiceController-Objekte an, die die zu startenden 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.
Typ: | ServiceController[] |
Position: | 0 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Name
Gibt die Dienstnamen der dienste an, die neu gestartet werden sollen.
Typ: | String[] |
Aliase: | ServiceName |
Position: | 0 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | True |
-PassThru
Gibt ein Objekt zurück, das den Dienst darstellt. Standardmäßig wird von diesem Cmdlet keine Ausgabe generiert.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-WhatIf
Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Typ: | SwitchParameter |
Aliase: | wi |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
Sie können ein Dienstobjekt an dieses Cmdlet weiterleiten.
Sie können eine Zeichenfolge, die einen Dienstnamen enthält, an dieses Cmdlet weiterleiten.
Ausgaben
None
Standardmäßig gibt dieses Cmdlet keine Ausgabe zurück.
Wenn Sie den PassThru-Parameter verwenden, gibt dieses Cmdlet ein ServiceController-Objekt zurück, das den neu gestarteten Dienst darstellt.
Hinweise
Restart-Service
kann Dienste nur steuern, wenn der aktuelle Benutzer über die Berechtigung verfügt, dies zu tun. Wenn ein Befehl nicht ordnungsgemäß verarbeitet wird, verfügen Sie u. U. nicht über die erforderlichen Berechtigungen.- Um die Dienstnamen und Anzeigenamen der Dienste in Ihrem System zu finden, geben Sie
Get-Service
". Die Dienstnamen werden in der Spalte "Name " angezeigt, und die Anzeigenamen werden in der Spalte "DisplayName " angezeigt.