Stop-Computer

Beendet den lokalen Computer und Remotecomputer (fährt sie herunter).

Syntax

Stop-Computer
    [-WsmanAuthentication <String>]
    [[-ComputerName] <String[]>]
    [[-Credential] <PSCredential>]
    [-Force]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Beschreibung

Das Stop-Computer Cmdlet beendet den lokalen Computer und Remotecomputer.

Sie können die Parameter Stop-Computer verwenden, um die Authentifizierungsebenen und alternative Anmeldeinformationen anzugeben und einen sofortigen Herunterfahren zu erzwingen.

In PowerShell 7.1 Stop-Computer wurde für Linux und macOS hinzugefügt. Die Parameter haben keine Auswirkungen auf diese Plattformen. Das Cmdlet ruft einfach den systemeigenen Befehl /sbin/shutdownauf.

Beispiele

Beispiel 1: Herunterfahren des lokalen Computers

In diesem Beispiel wird der lokale Computer heruntergefahren.

Stop-Computer -ComputerName localhost

Beispiel 2: Herunterfahren von zwei Remotecomputern und dem lokalen Computer

In diesem Beispiel werden zwei Remotecomputer und der lokale Computer beendet.

Stop-Computer -ComputerName "Server01", "Server02", "localhost"

Stop-Computer verwendet den ComputerName-Parameter , um zwei Remotecomputer und den lokalen Computer anzugeben. Jeder Computer wird heruntergefahren.

Beispiel 3: Herunterfahren von Remotecomputern als Hintergrundauftrag

In diesem Beispiel Stop-Computer wird als Hintergrundauftrag auf zwei Remotecomputern ausgeführt.

Der Hintergrundoperator & führt den Stop-Computer Befehl als Hintergrundauftrag aus. Weitere Informationen finden Sie unter about_Operators.

$j = Stop-Computer -ComputerName "Server01", "Server02" &
$results = $j | Receive-Job
$results

Stop-Computer verwendet den ComputerName-Parameter , um zwei Remotecomputer anzugeben. Der & Hintergrundoperator führt den Befehl als Hintergrundauftrag aus. Die Auftragsobjekte werden in der $j Variablen gespeichert.

Die Auftragsobjekte in der $j Variable werden an die Pipeline Receive-Jobgesendet, an die die Auftragsergebnisse gesendet werden. Die Objekte werden in der $results Variable gespeichert. Die $results Variable zeigt die Auftragsinformationen in der PowerShell-Konsole an.

Beispiel 4: Herunterfahren eines Remotecomputers

In diesem Beispiel wird ein Remotecomputer mithilfe der angegebenen Authentifizierung heruntergefahren.

Stop-Computer -ComputerName "Server01" -WsmanAuthentication Kerberos

Stop-Computer verwendet den ComputerName-Parameter , um den Remotecomputer anzugeben. Der WsmanAuthentication-Parameter gibt an, mit Kerberos eine Remoteverbindung einzurichten.

Beispiel 5: Herunterfahren von Computern in einer Domäne

In diesem Beispiel erzwingen die Befehle ein sofortiges Herunterfahren aller Computer in einer angegebenen Domäne.

$s = Get-Content -Path ./Domain01.txt
$c = Get-Credential -Credential Domain01\Admin01
Stop-Computer -ComputerName $s -Force -Credential $c

Get-Content verwendet den Path-Parameter , um eine Datei im aktuellen Verzeichnis mit der Liste der Domänencomputer abzurufen. Die Objekte werden in der $s Variable gespeichert.

Get-Credential verwendet den Parameter "Anmeldeinformationen ", um die Anmeldeinformationen eines Domänenadministrators anzugeben. Die Anmeldeinformationen werden in der $c Variablen gespeichert.

Stop-Computer schließt die Computer , die mit der Liste der Computer im $s Variablen angegeben sind, herunter. Der Force-Parameter erzwingt ein sofortiges Herunterfahren. Der Parameter "Anmeldeinformationen " sendet die Anmeldeinformationen, die in der $c Variablen gespeichert sind.

Parameter

-ComputerName

Gibt die Computer an, die beendet werden sollen. Die Standardeinstellung ist der lokale Computer.

Geben Sie den NetBIOS-Namen, die IP-Adresse oder den vollqualifizierten Domänennamen eines Computers oder mehrerer Computer in einer durch Trennzeichen getrennten Liste ein. Geben Sie zum Angeben des lokalen Computers den Computernamen oder den lokalenHost ein.

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

Type:String[]
Aliases:CN, __SERVER, Server, IPAddress
Position:0
Default value:None
Accept pipeline input:True
Accept wildcard characters:False
-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False
-Credential

Gibt ein Benutzerkonto an, das über die Berechtigung für diese Aktion verfügt. Der Standardwert ist der aktuelle Benutzer.

Geben Sie einen Benutzernamen ein, z. B. "User01" oder "Domäne01\User01", oder geben Sie ein vom Cmdlet generiertes Get-CredentialPSCredential-Objekt ein. Wenn Sie einen Benutzernamen eingeben, werden Sie aufgefordert, das Kennwort einzugeben.

Anmeldeinformationen werden in einem PSCredential-Objekt gespeichert und das Kennwort wird als SecureString gespeichert.

Hinweis

Weitere Informationen zum SecureString-Datenschutz finden Sie unter Wie sicher ist SecureString?.

Type:PSCredential
Position:1
Default value:Current user
Accept pipeline input:False
Accept wildcard characters:False
-Force

Erzwingt ein sofortiges Herunterfahren des Computers.

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

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

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

Gibt den Mechanismus an, der zum Authentifizieren der Benutzeranmeldeinformationen verwendet wird, wenn dieses Cmdlet das WSMan-Protokoll verwendet. Der Standardwert lautet Default.

Zulässige Werte für diesen Parameter:

  • Standard
  • CredSSP
  • Standard
  • Digest
  • Kerberos
  • Negotiate

Weitere Informationen zu den Werten dieses Parameters finden Sie unter AuthenticationMechanism.

Achtung

Die Credential Security Service Provider (CredSSP)-Authentifizierung, in der die Benutzeranmeldeinformationen an einen Remotecomputer übergeben werden, der authentifiziert werden soll, ist für Befehle konzipiert, die die Authentifizierung auf mehreren Ressourcen erfordern, z. B. auf einen Remotenetzwerkfreigabe zugreifen. Dieser Mechanismus erhöht das Sicherheitsrisiko des Remotevorgangs. Wenn die Sicherheit des Remotecomputers gefährdet ist, können die an ihn übergebenen Anmeldeinformationen zum Steuern der Netzwerksitzung verwendet werden.

Dieser Parameter wurde in PowerShell 3.0 eingeführt.

Type:String
Accepted values:Default, Basic, Negotiate, CredSSP, Digest, Kerberos
Position:Named
Default value:Default
Accept pipeline input:False
Accept wildcard characters:False

Eingaben

None

Sie können keine Eingabe an dieses Cmdlet weiterleiten.

Ausgaben

None

Hinweise

Dieses Cmdlet verwendet die Win32Shutdown-Methode der Win32_OperatingSystem WMI-Klasse. Diese Methode erfordert, dass das SeShutdownPrivilege-Recht für das Benutzerkonto aktiviert werden muss, das zum Neustart des Computers verwendet wird.

In PowerShell 7.1 Stop-Computer wurde für Linux und macOS hinzugefügt. Für diese Platorms ruft das Cmdlet den nativen Befehl /sbin/shutdownauf.