Share via


Set-Service

Startet, beendet und hält einen Dienst an und ändert seine Eigenschaften.

Syntax

Set-Service
   [-Name] <String>
   [-ComputerName <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, z. B . Status, Description, DisplayName und StartupType. Set-Service kann einen Dienst starten, beenden, anhalten oder anhalten. Um einen Dienst zu identifizieren, geben Sie seinen Dienstnamen ein, oder übermitteln Sie ein Dienstobjekt. Oder senden Sie einen Dienstnamen oder ein Dienstobjekt in der Pipeline an Set-Service.

Beispiele

Beispiel 1: Ändern eines Anzeigenamens

In diesem Beispiel wird der Anzeigename eines Diensts geändert. Verwenden Sie zum Anzeigen des ursprünglichen Anzeigenamens Get-Service.

Set-Service -Name LanmanWorkstation -DisplayName "LanMan Workstation"

Set-Service verwendet den Parameter Name , um den Dienstnamen LanmanWorkstation anzugeben. Der DisplayName-Parameter 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 StartupType-Parameter legt den Dienst auf Automatisch fest.

Get-Service verwendet den Parameter Name , um den BITS-Dienst anzugeben, und sendet das Objekt in die Pipeline. Select-Objectverwendet den Parameter Property, um die 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. Zu Vergleichszwecken wird der Befehl vor und nach der Aktualisierung der Beschreibung ausgeführt.

Set-Service verwendet den Parameter Name , um den BITS-Dienst anzugeben. Der Description-Parameter 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 Status-Parameter verwendet den Wert Ausführen , 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 Schedule-Dienst anzugeben, und sendet das Objekt in der Pipeline. Set-Service verwendet den Status-Parameter , 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 $SObjekt an. Der Status-Parameter legt den Dienst auf Beendet fest.

Parameter

-ComputerName

Gibt Computer an. Geben Sie bei Remotecomputern den NetBIOS-Namen, eine IP-Adresse oder einen vollqualifizierten Domänennamen ein. Wenn der ComputerName-Parameter nicht angegeben wird, wird der Befehl auf dem lokalen Computer ausgeführt.

Dieser Parameter basiert nicht auf PowerShell-Remoting. Sie können den ComputerName-Parameter auch dann verwenden, wenn Ihr Computer nicht für die Ausführung von Remotebefehlen konfiguriert ist.

Type:String[]
Aliases:cn
Position:Named
Default value:Local computer
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

Fordert Sie zur Bestätigung auf, bevor Sie ausführen Set-Service.

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

-Description

Gibt eine neue Beschreibung für den Dienst an.

Die Dienstbeschreibung wird unter Computerverwaltung, Dienste angezeigt. Die Description ist keine Eigenschaft des Get-ServiceServiceController-Objekts . Verwenden Sie Get-CimInstance zum Anzeigen der Dienstbeschreibung, die ein Win32_Service -Objekt zurückgibt, das den Dienst darstellt.

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

-DisplayName

Gibt einen neuen Anzeigenamen für den Dienst an.

Type:String
Aliases:DN
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 zu Set-Servicesenden.

Type:ServiceController
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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 zu Set-Servicesenden.

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

-PassThru

Gibt ein ServiceController-Objekt zurück, das die dienste darstellt, die geändert wurden. Standardmäßig Set-Service generiert keine Ausgabe.

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

-StartupType

Gibt den Startmodus des Diensts an

Die zulässigen Werte für diesen Parameter sind wie folgt:

  • Automatisch. Beginnt, wenn das System gestartet wird.
  • Deaktiviert. Der Dienst kann nicht gestartet werden.
  • Manuell. Der Dienst kann nur durch einen Benutzer oder ein Programm gestartet werden.
Type:ServiceStartMode
Aliases:StartMode, SM, ST
Accepted values:Automatic, Boot, Disabled, Manual, System
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Status

Gibt die 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.
Type:String
Accepted values:Paused, Running, Stopped
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Zeigt an, was bei Set-Service Ausführungen passieren würde. Das Cmdlet wird nicht ausgeführt.

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

Eingaben

System.ServiceProcess.ServiceController, System.String

Sie können die Pipeline verwenden, um ein Dienstobjekt oder eine Zeichenfolge, die einen Dienstnamen enthält, an zu Set-Servicesenden.

Ausgaben

ServiceController

Gibt standardmäßig Set-Service keine Objekte zurück. Verwenden Sie den PassThru-Parameter , um ein ServiceController-Objekt auszugeben.

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 Anzeigenamen eines Diensts zu suchen, verwenden Sie Get-Service. Die Dienstnamen befinden sich in der Spalte Name und die Anzeigenamen in der Spalte DisplayName .