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 vzdáleně vypne počítače. Může také vypnout místní počítač.
Pomocí parametrů Stop-Computer můžete spustit operace vypnutí 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 Windows PowerShell vzdálené komunikace, pokud nepoužijete parametr AsJob.
Příklady
Příklad 1: Vypnutí místního počítače
PS C:\> Stop-Computer
Tento příkaz vypne místní počítač.
Příklad 2: Vypnutí dvou vzdálených počítačů a místního počítače
PS C:\> Stop-Computer -ComputerName "Server01", "Server02", "localhost"
Tento příkaz zastaví dva vzdálené počítače Server01 a Server02 a místní počítač identifikovaný jako localhost.
Příklad 3: Vypnutí vzdálených počítačů jako úlohy na pozadí
PS C:\> $j = Stop-Computer -ComputerName "Server01", "Server02" -AsJob
PS C:\> $results = $j | Receive-Job
PS C:\> $results
Tyto příkazy spustí stop-computer jako úlohu na pozadí na dvou vzdálených počítačích a pak získají výsledky.
První příkaz určuje parametr AsJob , který příkaz spustí jako úlohu na pozadí. Příkaz uloží výsledný objekt úlohy do proměnné $j.
Druhý příkaz použije operátor kanálu k odeslání objektu úlohy v $j do Receive-Job, který získá výsledky úlohy. Příkaz uloží výsledky do proměnné $results.
Třetí příkaz zobrazí výsledek uložený v proměnné $results.
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
PS C:\> Stop-Computer -CompupterName "Server01" -Impersonation anonymous -Authentication PacketIntegrity
Tento příkaz zastaví vzdálený počítač Server01. Příkaz používá vlastní nastavení zosobnění a ověřování.
Příklad 5:
PS C:\> $s = Get-Content Domain01.txt
PS C:\> $c = Get-Credential domain01\admin01
PS C:\> Stop-Computer -ComputerName $s -Force -ThrottleLimit 10 -Credential $c
Tyto příkazy vynutí okamžité vypnutí všech počítačů v Doméně01.
První příkaz získá seznam počítačů v doméně a uloží je do proměnné $s.
Druhý příkaz získá přihlašovací údaje správce domény a pak je uloží do proměnné $c.
Třetí příkaz vypne počítače. Používá parametr ComputerName k odeslání seznamu počítačů v proměnné $s, parametru Force k vynucení okamžitého vypnutí a parametru Credential k odeslání přihlašovacích údajů uložených v proměnné $c. Používá také parametr ThrottleLimit k omezení příkazu na 10 souběžných připojení.
Parametry
-AsJob
Označuje, že tato rutina se spouští 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 musíte otevřít Windows 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. Pokud chcete získat výsledky úlohy, použijte rutinu Receive-Job.
Další informace o Windows PowerShell úlohách na pozadí najdete v tématu about_Jobs a about_Remote_Jobs.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Určuje počítače, které se mají zastavit. Výchozí hodnotou je místní počítač.
Do seznamu odděleného čárkami zadejte název netBIOS, IP adresu nebo plně kvalifikovaný název domény jednoho nebo více počítačů. Pokud chcete zadat místní počítač, zadejte název počítače nebo localhost.
Tento parametr nespoléhá na Windows PowerShell vzdálené komunikace. Parametr ComputerName můžete použít i v případě, že váš počítač není nakonfigurovaný pro spouštění vzdálených příkazů.
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 , například objekt z rutiny Get-Credential.
Type: | PSCredential |
Position: | 1 |
Default value: | None |
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. Zastavení počítače používá rozhraní WMI. Tento parametr přijímá tyto hodnoty:
- Default (Výchozí). Ověřování systému Windows
- Žádné Žádné ověřování modelu COM
- Připojit. 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ů
- Nezměněn. Stejné jako u předchozího příkazu
Výchozí hodnota je Paket.
Další informace o hodnotách tohoto parametru naleznete v tématu AuthenticationLevel – výčet v knihovně MSDN.
Type: | AuthenticationLevel |
Aliases: | Authentication |
Accepted values: | Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Vynutí okamžité vypnutí počítačů.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
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. Zastavení počítače používá rozhraní WMI. Tento parametr přijímá tyto hodnoty:
- Default (Výchozí). Výchozí zosobnění.
- Anonymní. Skryje identitu volajícího.
- Identifikovat. Umožňuje objektům dotazovat přihlašovací údaje volajícího.
- Zosobnit. Umožňuje objektům používat přihlašovací údaje volajícího.
Výchozí hodnota je Zosobnit.
Type: | ImpersonationLevel |
Accepted values: | Default, Anonymous, Identify, Impersonate, Delegate |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Protocol
Určuje, který protokol 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 zaveden v Windows PowerShell 3.0.
Type: | String |
Accepted values: | DCOM, WSMan |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ThrottleLimit
Určuje maximální počet souběžných připojení, která lze vytvořit 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, nikoli 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 není spuštěna.
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. Tento parametr přijímá tyto hodnoty:
- Basic
- CredSSP
- Default
- Digest
- Kerberos
- Vyjednávat.
Výchozí hodnota je Výchozí.
Další informace o hodnotách tohoto parametru najdete v tématu AuthenticationMechanism – výčet v knihovně MSDN.
Upozornění: Ověřování credSSP (Credential Security Service Provider), při kterém se přihlašovací údaje uživatele předávají vzdálenému počítači k ověření, je určeno pro příkazy, které vyžadují ověření na více než jednom prostředku, jako je například přístup ke vzdálené síťové složce. Tento mechanismus zvyšuje bezpečnostní riziko vzdálené operace. Pokud dojde k ohrožení zabezpečení vzdáleného počítače, mohou být k řízení síťové relace použity přihlašovací údaje, které jsou mu předány.
Tento parametr byl zaveden v Windows PowerShell 3.0.
Type: | String |
Accepted values: | Default, Basic, Negotiate, CredSSP, Digest, Kerberos |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Vstupy
None
Vstup do této rutiny nelze připojit.
Výstupy
None or System.Management.Automation.RemotingJob
Rutina vrátí objekt System.Management.Automation.RemotingJob , pokud zadáte parametr AsJob . V opačném případě negeneruje žádný výstup.
Poznámky
- Tato rutina používá metodu Win32Shutdowntřídy služby WMI Win32_OperatingSystem .
- V Windows PowerShell 2.0 nefunguje při restartování nebo zastavování vzdálených počítačů spolehlivě parametr AsJob. V Windows PowerShell 3.0 se tento problém vyřeší změnou implementace.