Sdílet prostřednictvím


Stop-Computer

Zastaví (vypne) místní a vzdálené počítače.

Syntax

Stop-Computer
    [-AsJob]
    [-DcomAuthentication <AuthenticationLevel>]
    [-WsmanAuthentication <String>]
    [-Protocol <String>]
    [[-ComputerName] <String[]>]
    [[-Credential] <PSCredential>]
    [-Impersonation <ImpersonationLevel>]
    [-ThrottleLimit <Int32>]
    [-Force]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Rutina Stop-Computer vypne místní počítač a vzdálené počítače.

Parametry Stop-Computer spuštění operací vypnutí můžete použít jako úlohu na pozadí, určit úrovně ověřování a alternativní přihlašovací údaje, omezit souběžná připojení vytvořená ke spuštění příkazu a vynutit okamžité vypnutí.

Tato rutina nevyžaduje vzdálené komunikace PowerShellu , pokud nepoužíváte parametr AsJob .

Příklady

Příklad 1: Vypnutí místního počítače

Tento příklad vypne místní počítač.

Stop-Computer -ComputerName localhost

Příklad 2: Vypnutí dvou vzdálených počítačů a místního počítače

Tento příklad zastaví dva vzdálené počítače a místní počítač.

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

Stop-Computerpoužívá parametr ComputerName k určení dvou vzdálených počítačů a místního počítače. Každý počítač je vypnutý.

Příklad 3: Vypnutí vzdálených počítačů jako úlohy na pozadí

V tomto příkladu Stop-Computer se spustí jako úloha na pozadí na dvou vzdálených počítačích.

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

Stop-Computerpoužívá parametr ComputerName k určení dvou vzdálených počítačů. Parametr AsJob spustí příkaz jako úlohu na pozadí. Objekty úlohy jsou uloženy v $j proměnné.

Objekty úlohy v $j proměnné se odesílají do kanálu, do Receive-Jobkterého se načte výsledky úlohy. Objekty jsou uloženy v $results proměnné. Proměnná $results zobrazí informace o úloze v konzole PowerShellu.

Vzhledem k tomu, že AsJob vytvoří úlohu v místním počítači a automaticky vrátí výsledky do místního počítače, můžete spustit Receive-Job jako místní příkaz.

Příklad 4: Vypnutí vzdáleného počítače

Tento příklad vypne vzdálený počítač pomocí zadaného ověřování.

Stop-Computer -ComputerName "Server01" -Impersonation Anonymous -DcomAuthentication PacketIntegrity

Stop-Computerpoužívá parametr ComputerName k určení vzdáleného počítače. Parametr zosobnění určuje přizpůsobenou zosobnění a parametr DcomAuthentication určuje nastavení na úrovni ověřování.

Příklad 5: Vypnutí počítačů v doméně

V tomto příkladu příkazy vynutí okamžité vypnutí všech počítačů v zadané doméně.

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

Get-Content pomocí parametru Path získá soubor v aktuálním adresáři se seznamem počítačů domény. Objekty jsou uloženy v $s proměnné.

Get-Credentialpoužívá parametr Credential k určení přihlašovacích údajů správce domény. Přihlašovací údaje jsou uloženy v $c proměnné.

Stop-Computer vypne počítače zadané pomocí seznamu počítačů parametru ComputerName v $s proměnné. Parametr Force vynutí okamžité vypnutí. Parametr ThrottleLimit omezuje příkaz na 10 souběžných připojení. Parametr Credential odešle přihlašovací údaje uložené v $c proměnné.

Parametry

-AsJob

Označuje, že tato rutina běží jako úloha na pozadí.

Chcete-li použít tento parametr, musí být místní a vzdálené počítače nakonfigurovány pro vzdálenou komunikace a v systému Windows Vista a novějších verzích operačního systému Windows je nutné otevřít PowerShell pomocí možnosti Spustit jako správce . Další informace najdete v tématu about_Remote_Requirements.

Když zadáte parametr AsJob , příkaz okamžitě vrátí objekt, který představuje úlohu na pozadí. Během dokončení úlohy můžete pokračovat v práci v relaci. Úloha se vytvoří v místním počítači a výsledky ze vzdálených počítačů se automaticky vrátí do místního počítače. K získání výsledků úlohy použijte rutinu Receive-Job .

Další informace o úlohách na pozadí PowerShellu najdete v tématu about_Jobs a about_Remote_Jobs.

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

-ComputerName

Určuje počítače, které se mají zastavit. Ve výchozím nastavení je to místní počítač.

Do seznamu oddělených čárkami zadejte název NETBIOS, IP adresu nebo plně kvalifikovaný název domény jednoho nebo více počítačů. Chcete-li zadat místní počítač, zadejte název počítače nebo localhost.

Tento parametr nespoléhá na vzdálené komunikace PowerShellu. Parametr ComputerName můžete použít i v případě, že váš počítač není nakonfigurovaný tak, aby spouštět vzdálené příkazy.

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

-Confirm

Před spuštěním rutiny zobrazí výzvu k potvrzení.

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

-Credential

Určuje uživatelský účet, který má oprávnění k provedení této akce. Ve výchozím nastavení je to aktuální uživatel.

Zadejte uživatelské jméno, například User01 nebo Domain01\User01, nebo zadejte objekt PSCredential vygenerovaný rutinouGet-Credential. Pokud zadáte uživatelské jméno, zobrazí se výzva k zadání hesla.

Přihlašovací údaje jsou uloženy v objektu PSCredential a heslo je uloženo jako SecureString.

Poznámka:

Další informace o ochraně dat SecureString naleznete v tématu Jak zabezpečený je SecureString?.

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

-DcomAuthentication

Určuje úroveň ověřování, kterou tato rutina používá s rozhraním WMI. Stop-Computer používá rozhraní WMI. Výchozí hodnota je Packet.

Tento parametr přijímá tyto hodnoty:

  • Výchozí: Ověřování systému Windows.
  • Žádné: Žádné ověřování modelu COM.
  • Připojení: ověřování modelu COM na úrovni Připojení.
  • Volání: Ověřování modelu COM na úrovni volání.
  • Paket: Ověřování modelu COM na úrovni paketů.
  • PacketIntegrity: Ověřování modelu COM na úrovni integrity paketů.
  • PacketPrivacy: Ověřování modelu COM na úrovni ochrany osobních údajů paketů
  • Beze změny: Stejné jako předchozí příkaz.

Další informace o hodnotách tohoto parametru naleznete v tématu AuthenticationLevel.

Type:AuthenticationLevel
Aliases:Authentication
Accepted values:Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged
Position:Named
Default value:Packet
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Vynutí okamžité vypnutí počítače.

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

-Impersonation

Určuje úroveň zosobnění, která se má použít, když tato rutina volá rozhraní WMI. Výchozí hodnota je Zosobnění.

Stop-Computer používá rozhraní WMI. Tento parametr přijímá tyto hodnoty:

  • Výchozí: Výchozí zosobnění.
  • Anonymní: Skryje identitu volajícího.
  • Identifikace: Umožňuje objektům dotazovat přihlašovací údaje volajícího.
  • Zosobnění: Umožňuje objektům používat přihlašovací údaje volajícího.
Type:ImpersonationLevel
Accepted values:Default, Anonymous, Identify, Impersonate, Delegate
Position:Named
Default value:Impersonate
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Protocol

Určuje protokol, který se má použít k restartování počítačů. Přijatelné hodnoty pro tento parametr jsou: WSMan a DCOM. Výchozí hodnota je DCOM.

Tento parametr byl představen v PowerShellu 3.0.

Type:String
Accepted values:DCOM, WSMan
Position:Named
Default value:DCOM
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ThrottleLimit

Určuje maximální počet souběžných připojení, která lze navázat pro spuštění tohoto příkazu. Pokud tento parametr vynecháte nebo zadáte hodnotu 0, použije se výchozí hodnota 32.

Omezení se vztahuje pouze na aktuální příkaz, ne na relaci nebo na počítač.

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

-WhatIf

Zobrazuje, co by se stalo při spuštění rutiny. Rutina se nespustí.

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

-WsmanAuthentication

Určuje mechanismus, který se používá k ověření přihlašovacích údajů uživatele, když tato rutina používá protokol WSMan. Výchozí hodnota je Default.

Tento parametr přijímá tyto hodnoty:

  • Basic
  • CredSSP
  • Výchozí
  • Digest
  • Kerberos
  • Vyjednávat.

Další informace o hodnotách tohoto parametru naleznete v tématu AuthenticationMechanism.

Upozornění

Ověřování zprostředkovatele služby CredSSP (Credential Security Service Provider), ve kterém jsou přihlašovací údaje uživatele předány vzdálenému počítači, který se má ověřit, je určený pro příkazy, které vyžadují ověření u více než jednoho prostředku, například pro přístup ke vzdálené síťové sdílené složce. Tento mechanismus zvyšuje riziko zabezpečení vzdálené operace. Pokud dojde k ohrožení zabezpečení vzdáleného počítače, dají se k řízení síťové relace použít přihlašovací údaje, které jsou mu předány.

Tento parametr byl představen v PowerShellu 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

Vstupy

None

Do této rutiny nemůžete roušit objekty.

Výstupy

None

Ve výchozím nastavení tato rutina nevrací žádný výstup.

System.Management.Automation.RemotingJob

Pokud použijete parametr AsJob , vrátí tato rutina objekt RemotingJob .

Poznámky

Tato rutina používá Win32ShutdownWin32_OperatingSystem metoda třídy WMI. Tato metoda vyžaduje SeShutdownPrivilege povolení oprávnění pro uživatelský účet použitý k vypnutí počítače.