Dela via


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 för Stop-Computer för att ange autentiseringsnivåer och alternativa autentiseringsuppgifter och framtvinga en omedelbar avstängning.

I PowerShell 7.1 lades Stop-Computer 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 körs Stop-Computer som ett bakgrundsjobb på två fjärrdatorer.

Bakgrundsoperatorn & kör kommandot Stop-Computer 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 Path 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 ComputerName lista över datorer i variabeln $s. Parametern Force tvingar fram en omedelbar avstängning. Parametern Credential skickar de autentiseringsuppgifter som sparats i variabeln $c.

Parametrar

-ComputerName

Anger vilka datorer som ska stoppas. Standardvärdet ä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.

Typ:String[]
Alias:CN, __SERVER, Server, IPAddress
Position:0
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-Confirm

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

Typ:SwitchParameter
Alias:cf
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Credential

Anger ett användarkonto som har behörighet att utföra den här åtgärden. Standardvärdet ä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-.

Not

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

Typ:PSCredential
Position:1
Standardvärde:Current user
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Force

Tvingar fram en omedelbar avstängning av datorn.

Typ:SwitchParameter
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-WhatIf

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

Typ:SwitchParameter
Alias:wi
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken: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 godtagbara värdena för den här parametern är:

  • Grundläggande
  • CredSSP
  • Standard
  • Smälta
  • Kerberos
  • Förhandla.

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

Försiktighet

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.

Typ:String
Godkända värden:Default, Basic, Negotiate, CredSSP, Digest, Kerberos
Position:Named
Standardvärde:Default
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken: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 SeShutdownPrivilege behörighet aktiveras för det användarkonto som används för att stänga av datorn.

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