Stop-Computer
Stoppar (stänger av) lokala datorer och fjärrdatorer.
Syntax
Stop-Computer
[-AsJob]
[-DcomAuthentication <AuthenticationLevel>]
[-WsmanAuthentication <String>]
[-Protocol <String>]
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-Impersonation <ImpersonationLevel>]
[-ThrottleLimit <Int32>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Cmdleten Stop-Computer stänger av datorer via fjärranslutning. Den kan också stänga av den lokala datorn.
Du kan använda parametrarna för Stop-Computer för att köra avstängningsåtgärderna som ett bakgrundsjobb, ange autentiseringsnivåer och alternativa autentiseringsuppgifter, begränsa de samtidiga anslutningar som skapas för att köra kommandot och framtvinga en omedelbar avstängning.
Den här cmdleten kräver inte Windows PowerShell fjärrkommunikation om du inte använder asjob-parametern.
Exempel
Exempel 1: Stäng av den lokala datorn
PS C:\> Stop-Computer
Det här kommandot stänger av den lokala datorn.
Exempel 2: Stäng av två fjärrdatorer och den lokala datorn
PS C:\> Stop-Computer -ComputerName "Server01", "Server02", "localhost"
Det här kommandot stoppar två fjärrdatorer, Server01 och Server02, och den lokala datorn som identifieras som localhost.
Exempel 3: Stäng av fjärrdatorer som ett bakgrundsjobb
PS C:\> $j = Stop-Computer -ComputerName "Server01", "Server02" -AsJob
PS C:\> $results = $j | Receive-Job
PS C:\> $results
Dessa kommandon kör Stop-Computer som ett bakgrundsjobb på två fjärrdatorer och får sedan resultatet.
Det första kommandot anger parametern AsJob för att köra kommandot som ett bakgrundsjobb. Kommandot sparar det resulterande jobbobjektet i variabeln $j.
Det andra kommandot använder en pipelineoperator för att skicka jobbobjektet i $j till Receive-Job, som hämtar jobbresultatet. Kommandot sparar resultatet i variabeln $results.
Det tredje kommandot visar resultatet som sparats i variabeln $results.
Eftersom AsJob skapar jobbet på den lokala datorn och automatiskt returnerar resultatet till den lokala datorn kan du köra Receive-Job som ett lokalt kommando.
Exempel 4: Stäng av en fjärrdator
PS C:\> Stop-Computer -CompupterName "Server01" -Impersonation anonymous -Authentication PacketIntegrity
Det här kommandot stoppar server01-fjärrdatorn. Kommandot använder anpassade personifierings- och autentiseringsinställningar.
Exempel 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
Dessa kommandon tvingar fram en omedelbar avstängning av alla datorer i Domain01.
Det första kommandot hämtar en lista över datorer i domänen och lagrar dem sedan i variabeln $s.
Det andra kommandot hämtar autentiseringsuppgifterna för en domänadministratör och lagrar dem sedan i variabeln $c.
Det tredje kommandot stänger av datorerna. Den använder parametern ComputerName för att skicka listan över datorer i variabeln $s , force-parametern för att tvinga fram en omedelbar avstängning och parametern Credential för att skicka de autentiseringsuppgifter som sparats i variabeln $c. Den använder också parametern ThrottleLimit för att begränsa kommandot till 10 samtidiga anslutningar.
Parametrar
-AsJob
Anger att den här cmdleten körs som ett bakgrundsjobb.
Om du vill använda den här parametern måste de lokala datorerna och fjärrdatorerna konfigureras för fjärrkommunikation, och i Windows Vista och senare versioner av Windows-operativsystemet måste du öppna Windows PowerShell med alternativet Kör som administratör. Mer information finns i about_Remote_Requirements.
När du anger asjob-parametern returnerar kommandot omedelbart ett objekt som representerar bakgrundsjobbet. Du kan fortsätta att arbeta i sessionen medan jobbet är klart. Jobbet skapas på den lokala datorn och resultatet från fjärrdatorer returneras automatiskt till den lokala datorn. Använd cmdleten Receive-Job för att hämta jobbresultatet.
Mer information om Windows PowerShell bakgrundsjobb finns i about_Jobs och about_Remote_Jobs.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-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å Windows PowerShell fjärrkommunikation. Du kan använda parametern ComputerName även om datorn inte har konfigurerats 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 , till exempel ett från cmdleten Get-Credential.
Type: | PSCredential |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DcomAuthentication
Anger den autentiseringsnivå som den här cmdleten använder med WMI. Stop-Computer använder WMI. De acceptabla värdena för den här parametern är:
- Standard. Windows-autentisering
- Inga. Ingen COM-autentisering
- Anslut. COM-autentisering på anslutningsnivå
- Kalla. COM-autentisering på samtalsnivå
- Paket. COM-autentisering på paketnivå
- PacketIntegrity. COM-autentisering på paketintegritetsnivå
- PacketPrivacy. Com-autentisering på paketsekretessnivå
- Oförändrad. Samma som föregående kommando
Standardvärdet är Paket.
Mer information om värdena för den här parametern finns i AuthenticationLevel Enumeration i MSDN-biblioteket.
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
Tvingar fram en omedelbar avstängning av datorerna.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Impersonation
Anger personifieringsnivån som ska användas när denna cmdlet anropar WMI. Stop-Computer använder WMI. De acceptabla värdena för den här parametern är:
- Standard. Standardpersonifiering.
- Anonym. Döljer anroparens identitet.
- Identifiera. Tillåter att objekt frågar efter anroparens autentiseringsuppgifter.
- Personifiera. Tillåter att objekt använder anroparens autentiseringsuppgifter.
Standardvärdet är Personifiera.
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
Anger vilket protokoll som ska användas för att starta om datorerna. De acceptabla värdena för den här parametern är: WSMan och DCOM. Standardvärdet är DCOM.
Den här parametern introducerades i 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
Anger det maximala antalet samtidiga anslutningar som kan upprättas för att köra det här kommandot. Om du utelämnar den här parametern eller anger värdet 0 används standardvärdet 32.
Begränsningsgränsen gäller endast för det aktuella kommandot, inte för sessionen eller datorn.
Type: | Int32 |
Position: | Named |
Default value: | None |
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 denna cmdlet använder WSMan-protokollet. De acceptabla värdena för den här parametern är:
- Basic
- CredSSP
- Standardvärde
- Sammandrag
- Kerberos
- Förhandla.
Standardvärdet är Standard.
Mer information om värdena för den här parametern finns i AuthenticationMechanism Enumeration i MSDN-biblioteket.
Varning! CredSSP-autentisering (CredSSP), där autentiseringsuppgifterna skickas till en fjärrdator som ska autentiseras, är utformad för kommandon som kräver autentisering på fler ä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 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 |
Indata
None
Du kan inte skicka indata till den här cmdleten.
Utdata
None or System.Management.Automation.RemotingJob
Cmdleten returnerar ett System.Management.Automation.RemotingJob-objekt om du anger parametern AsJob . Annars genererar den inga utdata.
Kommentarer
- Den här cmdleten använder metoden Win32Shutdown i WMI-klassen Win32_OperatingSystem .
- I Windows PowerShell 2.0 fungerar inte AsJob-parametern tillförlitligt när du startar om/stoppar fjärrdatorer. I Windows PowerShell 3.0 ändras implementeringen för att lösa problemet.