Startet, beendet und hält einen Dienst an und ändert seine Eigenschaften. (Set-Service)
NAMESet-ServiceÜBERSICHTStartet, beendet und hält einen Dienst an und ändert seine Eigenschaften.SYNTAXSet-Service [-Name] <string> [-Description <string>] [-DisplayName <string>] [-PassThru] [-StartupType {Automatic | Manual | Disabled}] [-Status <string>] [-ComputerName <string[]>] [-Confirm] [-WhatIf] [<CommonParameters>] Set-Service [-Description <string>] [-DisplayName <string>] [-InputObject <ServiceController>] [-PassThru] [-StartupType {Automatic | Manual | Disabled}] [-Status <string>] [-ComputerName <string[]>] [-Confirm] [-WhatIf] [<CommonParameters>]BESCHREIBUNGMit dem Cmdlet "Set-Service" werden die Eigenschaften eines lokalen oder Remotediensts geändert, einschließlich Status, Beschreibung, Anzeigename und Startmodus. Sie können mit diesem Cmdlet einen Dienst starten, beenden oder anhalten (unterbrechen). Geben Sie zum Identifizieren des Diensts den Dienstnamen ein, senden Sie ein Dienstobjekt, oder übergeben Sie einen Dienstnamen oder ein Dienstobjekt über die Pipeline an Set-Service.PARAMETER-ComputerName <string[]> Gibt einen oder mehrere Computer an. Der Standardwert ist der lokale Computer. Geben Sie den NetBIOS-Namen, eine IP-Adresse oder den vollqualifizierten Domänennamen eines Remotecomputers ein. Um den lokalen Computer anzugeben, geben Sie den Computernamen, einen Punkt (.) oder "localhost" ein. Dieser Parameter beruht nicht auf Windows PowerShell-Remoting. Sie können den ComputerName-Parameter von Set-Service auch dann verwenden, wenn der Computer nicht für das Ausführen von Remotebefehlen konfiguriert ist. Erforderlich? false Position? named Standardwert Lokaler Computer Pipelineeingaben akzeptieren?true (ByPropertyName) Platzhalterzeichen akzeptieren?false -Description <string> Gibt eine neue Beschreibung für den Dienst an. Die Beschreibung des Diensts wird in der Computerverwaltung unter "Dienste" angezeigt. "Description" ist keine Eigenschaft des ServiceController-Objekts, das Get-Service abruft. Rufen Sie zum Anzeigen der Dienstbeschreibung mit Get-WmiObject ein Win32_Service-Objekt ab, das den Dienst darstellt. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -DisplayName <string> Gibt einen neuen Anzeigenamen für den Dienst an. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -InputObject <ServiceController> Gibt ein ServiceController-Objekt an, das den zu ändernden Dienst darstellt. Geben Sie eine Variable ein, die das Objekt enthält, oder einen Befehl oder Ausdruck, mit dem das Objekt abgerufen wird, z. B. den Befehl "Get-Service". Sie können ein Dienstobjekt auch über die Pipeline an Set-Service übergeben. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?true (ByValue) Platzhalterzeichen akzeptieren?false -Name <string> Gibt den Dienstnamen des zu ändernden Diensts an. Platzhalter sind nicht zulässig. Sie können einen Dienstnamen auch über die Pipeline an Set-Service übergeben. Erforderlich? true Position? 1 Standardwert Pipelineeingaben akzeptieren?true (ByValue, ByPropertyName) Platzhalterzeichen akzeptieren?false -PassThru [<SwitchParameter>] Gibt Objekte zurück, die die geänderten Dienste darstellen. Standardmäßig wird von diesem Cmdlet keine Ausgabe generiert. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -StartupType <ServiceStartMode> Ändert den Startmodus des Diensts. Gültige Werte für "StartupType": - Automatic: Der Dienst wird beim Systemstart gestartet. - Manual: Der Dienst kann nur durch einen Benutzer oder ein Programm gestartet werden. - Disabled: Der Dienst kann nicht gestartet werden. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Status <string> Startet, beendet oder hält die Dienste an. Gültige Werte: - Running: Startet den Dienst. - Stopped: Beendet den Dienst. - Paused: Unterbricht den Dienst. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Confirm [<SwitchParameter>] Fordert Sie vor der Ausführung des Befehls zur Bestätigung auf. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -WhatIf [<SwitchParameter>] Beschreibt die Auswirkungen einer Ausführung des Befehls, ohne den Befehl tatsächlich auszuführen. Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false <CommonParameters> Dieses Cmdlet unterstützt folgende allgemeine Parameter: "Verbose", "Debug", "ErrorAction", "ErrorVariable", "WarningAction", "WarningVariable", "OutBuffer" und "OutVariable". Weitere Informationen erhalten Sie mit dem Befehl "get-help about_commonparameters".EINGABENSystem.ServiceProcess.ServiceController, System.String Sie können ein Dienstobjekt oder eine Zeichenfolge, die einen Dienstnamen enthält, über die Pipeline an Set-Service übergeben.AUSGABENKeiner Dieses Cmdlet gibt keine Objekte zurück.HINWEISEWenn Sie Set-Service unter Windows Vista und höheren Versionen von Windows verwenden möchten, starten Sie Windows PowerShell mit der Option "Als Administrator ausführen". Mit Set-Service können nur dann Dienste gesteuert werden, wenn der aktuelle Benutzer über die entsprechende Berechtigung verfügt. Wenn ein Befehl nicht ordnungsgemäß verarbeitet wird, verfügen Sie u. U. nicht über die erforderlichen Berechtigungen. Geben Sie "get-service" ein, um die Dienstnamen und die Anzeigenamen der Dienste auf dem System zu suchen. Die Dienstnamen werden in der Spalte "Name" und die Anzeigenamen in der Spalte "DisplayName" aufgeführt.Beispiele
BEISPIEL 1C:\PS>set-service -name lanmanworkstation -DisplayName "LanMan Workstation" Beschreibung ----------- Mit diesem Befehl wird der Anzeigename des Diensts "lanmanworkstation" in "LanMan Workstation" geändert. (Der Standardname ist "Workstation".)BEISPIEL 2C:\PS>get-wmiobject win32_service -filter "name = 'SysmonLog'" ExitCode : 0 Name : SysmonLog ProcessId : 0 StartMode : Manual State : Stopped Status : OK C:\PS> set-service sysmonlog -startuptype automatic C:\PS> get-wmiobject win32_service -filter "name = 'SysmonLog'" ExitCode : 0 Name : SysmonLog ProcessId : 0 StartMode : Auto State : Stopped Status : OK C:\PS> get-wmiobject win32_service | format-table Name, StartMode -auto Name StartMode ---- --------- AdtAgent Auto Alerter Disabled ALG Manual AppMgmt Manual ... Beschreibung ----------- Mit diesen Befehlen wird der Starttyp des Diensts für Leistungsprotokolle und -benachrichtigungen (SysmonLog) abgerufen, der Startmodus auf "Automatic" festgelegt und anschließend das Ergebnis der Änderung angezeigt. Diese Befehle verwenden das Cmdlet "Get-WmiObject", um das Win32_Service-Objekt für den Dienst abzurufen, da das von Get-Service zurückgegebene ServiceController-Objekt den Startmodus nicht enthält. Im ersten Befehl wird das WMI-Objekt (Windows Management Instrumentation, Windows-Verwaltungsinstrumentation), das den SysmonLog-Dienst darstellt, mit dem Cmdlet "Get-WmiObject" abgerufen. In der Standardausgabe dieses Befehls wird der Startmodus des Diensts angezeigt. Im zweiten Befehl wird der Startmodus mit "Set-Service" in "Automatic" geändert. Anschließend wird der erste Befehl noch einmal ausgeführt, um die Änderung anzuzeigen. Der letzte Befehl zeigt den Startmodus aller Dienste auf dem Computer an.BEISPIEL 3C:\PS>set-service -name Schedule -computername S1 -description "Configures and schedules tasks." C:\PS> get-wmiobject win32_service -computername s1 | where-object {$_.Name -eq "Schedule"} | format-list Name, Description Beschreibung ----------- Mit diesen Befehlen wird die Beschreibung des Taskplaner-Diensts auf dem Remotecomputer "S1" geändert und das Ergebnis anschließend angezeigt. Diese Befehle verwenden das Cmdlet "Get-WmiObject", um das Win32_Service-Objekt für den Dienst abzurufen, da das von Get-Service zurückgegebene ServiceController-Objekt die Dienstbeschreibung nicht enthält. Im ersten Befehl wird die Beschreibung mit dem Befehl "Set-Service" geändert. Der Dienst wird mit seinem Dienstnamen "Schedule" angegeben. Im zweiten Befehl wird eine Instanz von "WMI Win32_Service", die den Taskplaner-Dienst darstellt, mit dem Cmdlet "Get-WmiObject" abgerufen. Mit dem ersten Element im Befehl werden alle Instanzen der Win32_service-Klasse abgerufen. Der Pipelineoperator (|) übergibt das Ergebnis an das Cmdlet "Where-Object", das Instanzen auswählt, deren Name-Eigenschaft den Wert "Schedule" aufweist. Ein weiterer Pipelineoperator übergibt das Ergebnis an das Cmdlet "Format-List", das die Ausgabe als Liste formatiert, die nur die Name-Eigenschaft und die Description-Eigenschaft enthält.BEISPIEL 4C:\PS>set-service winrm -status Running -passthru -computername Server02 Beschreibung ----------- Mit diesem Befehl wird der Dienst "WinRM" auf dem Computer "Server02" gestartet. Der Befehl gibt mit dem Status-Parameter den gewünschten Status ("running") an. Mit dem PassThru-Parameter wird Set-Service veranlasst, ein Objekt zurückzugeben, das den WinRM-Dienst darstellt.BEISPIEL 5C:\PS>get-service schedule -computername S1, S2 | set-service -status paused Beschreibung ----------- Dieser Befehl hält den Dienst "Schedule" auf den Remotecomputern "S1" und "S2" an. Der Dienst wird mit dem Cmdlet "Get-Service" abgerufen. Ein Pipelineoperator (|) sendet den Dienst an das Cmdlet "Set-Service", das seinen Status in "Paused" ändert.BEISPIEL 6C:\PS>$s = get-service schedule C:\PS> set-service -inputobject $s -status stopped Beschreibung ----------- Mit diesen Befehlen wird der Dienst "Schedule" auf dem lokalen Computer beendet. Im ersten Befehl wird mit dem Cmdlet "Get-Service" der Dienst "Schedule" abgerufen. Der Befehl speichert den Dienst in der Variablen "$s". Der zweite Befehl ändert mit dem Cmdlet "Set-Service" den Status des Diensts "Schedule" in "Beendet". Mit dem InputObject-Parameter wird der in der Variablen "$s" gespeicherte Dienst gesendet. Mit dem Status-Parameter wird der gewünschte Status angegeben. VERWANDTE LINKS Online version: http://go.microsoft.com/fwlink/?LinkID=113399 (möglicherweise auf Englisch) Get-Service Start-Service Stop-Service Restart-Service Resume-Service Suspend-Service New-Service C:\Windows>powershell get-help New-Service -full
Microsoft Windows [Version 10.0.19045.3693]
Copyright (c) 2023 Microsoft Corporation.
ColorConsole [Version 3.7.1000] PowerShell 2.0-Export