Stop-Computer

Stoppar (stänger av) lokala datorer och fjärrdatorer.

Syntax

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

Description

Cmdleten Stop-Computer stänger av den lokala datorn och fjärrdatorerna.

Du kan använda parametrarna Stop-Computer för för att ange autentiseringsnivåer och alternativa autentiseringsuppgifter och för att tvinga fram en omedelbar avstängning.

I PowerShell 7.1 Stop-Computer har lagts till för Linux och macOS. Parametrarna har ingen effekt på dessa plattformar. Cmdleten anropar bara det interna kommandot /sbin/shutdown.

Exempel

Exempel 1: Stäng av den lokala datorn

Det här exemplet stänger av den lokala datorn.

Stop-Computer -ComputerName localhost

Exempel 2: Stäng av två fjärrdatorer och den lokala datorn

Det här exemplet stoppar två fjärrdatorer och den lokala datorn.

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

Stop-Computer använder parametern ComputerName för att ange två fjärrdatorer och den lokala datorn. Varje dator stängs av.

Exempel 3: Stäng av fjärrdatorer som ett bakgrundsjobb

I det här exemplet Stop-Computer körs som ett bakgrundsjobb på två fjärrdatorer.

Bakgrundsoperatorn & kör Stop-Computer kommandot som ett bakgrundsjobb. Mer information finns i about_Operators.

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

Stop-Computer använder parametern ComputerName för att ange två fjärrdatorer. Bakgrundsoperatorn & kör kommandot som ett bakgrundsjobb. Jobbobjekten lagras i variabeln $j .

Jobbobjekten i variabeln $j skickas ned i pipelinen till Receive-Job, som hämtar jobbresultatet. Objekten lagras i variabeln $results . Variabeln $results visar jobbinformationen i PowerShell-konsolen.

Exempel 4: Stäng av en fjärrdator

Det här exemplet stänger av en fjärrdator med angiven autentisering.

Stop-Computer -ComputerName "Server01" -WsmanAuthentication Kerberos

Stop-Computer använder parametern ComputerName för att ange fjärrdatorn. Parametern WsmanAuthentication anger att kerberos ska användas för att upprätta en fjärranslutning.

Exempel 5: Stänga av datorer i en domän

I det här exemplet tvingar kommandona en omedelbar avstängning av alla datorer i en angiven domän.

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

Get-Content använder parametern Sökväg för att hämta en fil i den aktuella katalogen med listan över domändatorer. Objekten lagras i variabeln $s .

Get-Credential använder parametern Credential för att ange autentiseringsuppgifterna för en domänadministratör. Autentiseringsuppgifterna lagras i variabeln $c .

Stop-Computer stänger av de datorer som anges med parametern ComputerNames lista över datorer i variabeln $s . Force-parametern tvingar fram en omedelbar avstängning. Parametern Credential skickar de autentiseringsuppgifter som sparats i variabeln $c .

Parametrar

-ComputerName

Anger vilka datorer som ska stoppas. Standard är den lokala datorn.

Ange NETBIOS-namn, IP-adress eller fullständigt domännamn för en eller flera datorer i en kommaavgränsad lista. Om du vill ange den lokala datorn skriver du datornamnet eller localhost.

Den här parametern förlitar sig inte på PowerShell-fjärrkommunikation. Du kan använda parametern ComputerName även om datorn inte är konfigurerad för att köra fjärrkommandon.

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

-Confirm

Uppmanar dig att bekräfta innan du kör cmdleten.

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

-Credential

Anger ett användarkonto som har behörighet att utföra den här åtgärden. Standard är den aktuella användaren.

Ange ett användarnamn, till exempel User01 eller Domain01\User01, eller ange ett PSCredential-objekt som genereras av cmdleten Get-Credential. Om du skriver ett användarnamn uppmanas du att ange lösenordet.

Autentiseringsuppgifter lagras i ett PSCredential-objekt och lösenordet lagras som en SecureString.

Kommentar

Mer information om SecureString-dataskydd finns i Hur säker är SecureString?.

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

-Force

Tvingar fram en omedelbar avstängning av datorn.

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

-WhatIf

Visar vad som skulle hända om cmdleten kördes. Cmdleten körs inte.

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

-WsmanAuthentication

Anger den mekanism som används för att autentisera användarautentiseringsuppgifterna när den här cmdleten använder WSMan-protokollet. Standardvärdet är Standard.

De acceptabla värdena för den här parametern är:

  • Grundläggande
  • CredSSP
  • Standardvärde
  • Digest
  • Kerberos
  • Förhandla.

Mer information om värdena för den här parametern finns i AuthenticationMechanism.

Varning

CredSSP-autentisering (CredSSP), där användarautentiseringsuppgifterna skickas till en fjärrdator som ska autentiseras, är utformad för kommandon som kräver autentisering på mer än en resurs, till exempel åtkomst till en fjärrnätverksresurs. Den här mekanismen ökar säkerhetsrisken för fjärråtgärden. Om fjärrdatorn komprometteras kan de autentiseringsuppgifter som skickas till den användas för att styra nätverkssessionen.

Den här parametern introducerades i PowerShell 3.0.

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

Indata

None

Du kan inte skicka objekt till den här cmdleten.

Utdata

None

Den här cmdleten returnerar inga utdata.

Kommentarer

Den här cmdleten använder Win32Shutdown metoden för WMI-klassen Win32_OperatingSystem . Den här metoden kräver att behörigheten SeShutdownPrivilege aktiveras för det användarkonto som används för att stänga av datorn.

I PowerShell 7.1 Stop-Computer har lagts till för Linux och macOS. För dessa plattformar anropar cmdleten det interna kommandot /sbin/shutdown.