Set-Service
Startet, beendet und hält einen Dienst an und ändert seine Eigenschaften.
Syntax
Set-Service
[-ComputerName <String[]>]
[-Name] <String>
[-DisplayName <String>]
[-Description <String>]
[-StartupType <ServiceStartMode>]
[-Status <String>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-Service
[-ComputerName <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-StartupType <ServiceStartMode>]
[-Status <String>]
[-InputObject <ServiceController>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Set-Service
Cmdlet ändert die Eigenschaften eines Diensts wie Status, Beschreibung, DisplayName und StartupType. Set-Service
kann einen Dienst starten, beenden, anhalten oder anhalten. Um einen Dienst zu identifizieren, geben Sie den Dienstnamen ein, oder senden Sie ein Dienstobjekt. Oder senden Sie einen Dienstnamen oder ein Dienstobjekt an die Pipeline nach unten.Set-Service
Beispiele
Beispiel 1: Ändern eines Anzeigenamens
In diesem Beispiel wird der Anzeigename eines Diensts geändert. Um den ursprünglichen Anzeigenamen anzuzeigen, verwenden Sie Get-Service
.
Set-Service -Name LanmanWorkstation -DisplayName "LanMan Workstation"
Set-Service
verwendet den Parameter Name , um den Namen des Diensts , LanmanWorkstation, anzugeben. Der Parameter DisplayName gibt den neuen Anzeigenamen LanMan Workstation an.
Beispiel 2: Ändern des Starttyps von Diensten
In diesem Beispiel wird gezeigt, wie Sie den Starttyp eines Diensts ändern.
Set-Service -Name BITS -StartupType Automatic
Get-Service BITS | Select-Object -Property Name, StartType, Status
Name StartType Status
---- --------- ------
BITS Automatic Running
Set-Service
verwendet den Parameter Name, um den Namen des Diensts, BITS, anzugeben. Der Parameter StartupType legt den Dienst auf "Automatisch" fest.
Get-Service
verwendet den Parameter Name , um den BITS-Dienst anzugeben und das Objekt an die Pipeline zu senden. Select-Object
verwendet den Parameter Property , um den Status des BITS-Diensts anzuzeigen.
Beispiel 3: Ändern der Beschreibung eines Diensts
In diesem Beispiel wird die Beschreibung des BITS-Diensts geändert und das Ergebnis angezeigt.
Das Get-CimInstance
Cmdlet wird verwendet, da es ein Win32_Service-Objekt zurückgibt, das die Beschreibung des Diensts enthält.
Get-CimInstance Win32_Service -Filter 'Name = "BITS"' | Format-List Name, Description
Name : BITS
Description : Transfers files in the background using idle network bandwidth. If the service is
disabled, then any applications that depend on BITS, such as Windows Update or MSN
Explorer, will be unable to automatically download programs and other information.
Set-Service -Name BITS -Description "Transfers files in the background using idle network bandwidth."
Get-CimInstance Win32_Service -Filter 'Name = "BITS"' | Format-List Name, Description
Name : BITS
Description : Transfers files in the background using idle network bandwidth.
Get-CimInstance
sendet das Objekt an die Pipeline Format-List
und zeigt den Namen und die Beschreibung des Diensts an. Für Vergleichszwecke wird der Befehl vor und nach der Aktualisierung der Beschreibung ausgeführt.
Set-Service
verwendet den Parameter Name , um den BITS-Dienst anzugeben. Der Parameter Description gibt den aktualisierten Text für die Beschreibung der Dienste an.
Beispiel 4: Starten eines Diensts
In diesem Beispiel wird ein Dienst gestartet.
Set-Service -Name WinRM -Status Running -PassThru
Status Name DisplayName
------ ---- -----------
Running WinRM Windows Remote Management (WS-Manag...
Set-Service
verwendet den Parameter Name, um den Dienst WinRM anzugeben. Der Parameter Status verwendet den Wert "Running ", um den Dienst zu starten. Der PassThru-Parameter gibt ein ServiceController-Objekt aus, das die Ergebnisse anzeigt.
Beispiel 5: Anhalten eines Diensts
In diesem Beispiel wird die Pipeline verwendet, um den Dienst anzuhalten.
Get-Service -Name Schedule | Set-Service -Status Paused
Get-Service
verwendet den Parameter Name, um den Zeitplandienst anzugeben, und sendet das Objekt an die Pipeline. Set-Service
verwendet den Parameter Status , um den Dienst auf "Angehalten" festzulegen.
Beispiel 6: Beenden eines Diensts
In diesem Beispiel wird eine Variable verwendet, um einen Dienst zu beenden.
$S = Get-Service -Name Schedule
Set-Service -InputObject $S -Status Stopped
Get-Service
verwendet den Parameter Name , um den Dienst , Schedule, anzugeben. Das Objekt wird in der Variablen gespeichert. $S
Set-Service
verwendet den InputObject-Parameter und gibt das gespeicherte $S
Objekt an. Der Parameter Status legt den Dienst auf "Beendet" fest.
Beispiel 7: Festlegen des Starttyps für mehrere Dienste
Das Set-Service
Cmdlet akzeptiert jeweils nur einen Dienstnamen. Sie können jedoch mehrere Dienste Set-Service
an die Änderung der Konfiguration mehrerer Dienste weiterleitungen.
Get-Service SQLWriter,spooler |
Set-Service -StartupType Automatic -PassThru |
Select-Object Name, StartType
Name StartType
---- ---------
spooler Automatic
SQLWriter Automatic
Parameter
-ComputerName
Gibt Computer an. Geben Sie für Remotecomputer den NetBIOS-Namen, eine IP-Adresse oder einen vollqualifizierten Domänennamen ein. Wenn der Parameter ComputerName nicht angegeben ist, wird der Befehl auf dem lokalen Computer ausgeführt.
Dieser Parameter basiert nicht auf PowerShell-Remoting. Sie können den Parameter ComputerName auch dann verwenden, wenn Ihr Computer nicht für die Ausführung von Remotebefehlen konfiguriert ist.
Typ: | String[] |
Aliase: | cn |
Position: | Named |
Standardwert: | Local computer |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Confirm
Fordert Sie vor dem Ausführen Set-Service
zur Bestätigung auf.
Typ: | SwitchParameter |
Aliase: | cf |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Description
Gibt eine neue Beschreibung für den Dienst an.
Die Dienstbeschreibung wird in computerverwaltung , Dienste angezeigt. Die Beschreibung ist keine Eigenschaft des Get-Service
ServiceController-Objekts . Um die Dienstbeschreibung anzuzeigen, verwenden Get-CimInstance
Sie dieses Objekt, das ein Win32_Service-Objekt zurückgibt, das den Dienst darstellt.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-DisplayName
Gibt einen neuen Anzeigenamen für den Dienst an.
Hinweis
Set-Service
In der Regel wird nur für Windows-Dienste und nicht für Treiber verwendet. Wenn Sie jedoch den Namen eines Treibers angeben, Set-Service
kann der Treiber als Ziel verwendet werden.
Typ: | String |
Aliase: | DN |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-InputObject
Gibt ein ServiceController -Objekt an, das den zu ändernden Dienst darstellt. Geben Sie eine Variable ein, die das Objekt enthält, oder geben Sie einen Befehl oder Ausdruck ein, der das Objekt abruft, z. B. einen Get-Service
Befehl. Sie können die Pipeline verwenden, um ein Dienstobjekt an .Set-Service
Typ: | ServiceController |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Name
Gibt den Dienstnamen des zu ändernden Diensts an. Wildcardzeichen sind nicht zulässig. Sie können die Pipeline verwenden, um einen Dienstnamen an Set-Service
.
Hinweis
Set-Service
In der Regel wird nur für Windows-Dienste und nicht für Treiber verwendet. Wenn Sie jedoch den Namen eines Treibers angeben, Set-Service
kann der Treiber als Ziel verwendet werden.
Typ: | String |
Aliase: | ServiceName, SN |
Position: | 0 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-PassThru
Gibt ein ServiceController -Objekt, das die geänderten Dienste darstellt. Generiert standardmäßig Set-Service
keine Ausgabe.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-StartupType
Legt den Starttyp des Diensts fest. Zulässige Werte für diesen Parameter:
- Automatisch – Der Dienst wird gestartet oder vom Betriebssystem gestartet, beim Systemstart. Wenn ein automatisch gestarteter Dienst von einem manuell gestarteten Dienst abhängig ist, wird der manuell gestartete Dienst beim Systemstart ebenfalls automatisch gestartet.
- Deaktiviert – Der Dienst ist deaktiviert und kann von einem Benutzer oder einer Anwendung nicht gestartet werden.
- Manuell – Der Dienst wird nur manuell, von einem Benutzer, mithilfe des Dienststeuerungs-Managers oder einer Anwendung gestartet.
- Start – Gibt an, dass der Dienst ein Gerätetreiber ist, der vom Systemladeprogramm gestartet wurde. Dieser Wert gilt nur für Gerätetreiber.
- System – Gibt an, dass der Dienst ein Gerätetreiber ist, der von der Funktion "IOInitSystem()" gestartet wurde. Dieser Wert gilt nur für Gerätetreiber.
Der Standardwert ist "Automatisch".
Typ: | ServiceStartMode |
Aliase: | StartMode, SM, ST |
Zulässige Werte: | Boot, System, Automatic, Manual, Disabled |
Position: | Named |
Standardwert: | Automatic |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Status
Gibt den Status für den Dienst an.
Die zulässigen Werte für diesen Parameter sind wie folgt:
- Angehalten. Hält den Dienst an.
- Wird ausgeführt. Startet den Dienst.
- Stopped(Beendet): Dies ist der anfängliche Status des Kanals nach seiner Erstellung (es sei denn, im Portal wurde das automatische Starten gewählt). Beendet den Dienst.
Typ: | String |
Zulässige Werte: | Paused, Running, Stopped |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-WhatIf
Zeigt, was passiert, wenn Set-Service
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 Parameter "PassThru " verwenden, gibt dieses Cmdlet ein ServiceController-Objekt zurück.
Hinweise
Set-Service
erfordert erhöhte Berechtigungen. Verwenden Sie die Option "Als Administrator ausführen".
Set-Service
kann dienste nur steuern, wenn der aktuelle Benutzer über Berechtigungen zum Verwalten von Diensten verfügt. Wenn ein Befehl nicht ordnungsgemäß funktioniert, verfügen Sie möglicherweise nicht über die erforderlichen Berechtigungen.
Um den Dienstnamen oder den Anzeigenamen eines Diensts zu suchen, verwenden Sie Get-Service
. Die Dienstnamen befinden sich in der Spalte "Name ", und die Anzeigenamen befinden sich in der Spalte "DisplayName ".