Stop-Computer
Lokale en externe computers stoppen (afsluiten).
Syntax
Stop-Computer
[-AsJob]
[-DcomAuthentication <AuthenticationLevel>]
[-WsmanAuthentication <String>]
[-Protocol <String>]
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-Impersonation <ImpersonationLevel>]
[-ThrottleLimit <Int32>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Met de cmdlet Stop-Computer worden computers extern afgesloten. Het kan ook de lokale computer afsluiten.
U kunt de parameters van Stop-Computer gebruiken om de afsluitbewerkingen uit te voeren als achtergrondtaak, om de verificatieniveaus en alternatieve referenties op te geven, om de gelijktijdige verbindingen te beperken die worden gemaakt om de opdracht uit te voeren en om een onmiddellijke afsluiting af te dwingen.
Voor deze cmdlet is geen externe Windows PowerShell vereist, tenzij u de parameter AsJob gebruikt.
Voorbeelden
Voorbeeld 1: De lokale computer afsluiten
PS C:\> Stop-Computer
Met deze opdracht wordt de lokale computer afgesloten.
Voorbeeld 2: Twee externe computers en de lokale computer afsluiten
PS C:\> Stop-Computer -ComputerName "Server01", "Server02", "localhost"
Met deze opdracht stopt u twee externe computers, Server01 en Server02, en de lokale computer, geïdentificeerd als localhost.
Voorbeeld 3: Externe computers afsluiten als achtergrondtaak
PS C:\> $j = Stop-Computer -ComputerName "Server01", "Server02" -AsJob
PS C:\> $results = $j | Receive-Job
PS C:\> $results
Met deze opdrachten wordt Stop-Computer als achtergrondtaak op twee externe computers uitgevoerd en worden de resultaten opgehaald.
Met de eerste opdracht geeft u de parameter AsJob op om de opdracht als achtergrondtaak uit te voeren. Met de opdracht wordt het resulterende taakobject opgeslagen in de variabele $j.
De tweede opdracht maakt gebruik van een pijplijnoperator om het taakobject in $j te verzenden naar Receive-Job, waarmee de taakresultaten worden opgehaald. Met de opdracht worden de resultaten opgeslagen in de variabele $results.
Met de derde opdracht wordt het resultaat weergegeven dat is opgeslagen in de variabele $results.
Omdat AsJob de taak op de lokale computer maakt en de resultaten automatisch naar de lokale computer retourneert, kunt u Receive-Job uitvoeren als een lokale opdracht.
Voorbeeld 4: Een externe computer afsluiten
PS C:\> Stop-Computer -CompupterName "Server01" -Impersonation anonymous -Authentication PacketIntegrity
Met deze opdracht wordt de externe server01-computer gestopt. De opdracht maakt gebruik van aangepaste imitatie- en verificatie-instellingen.
Voorbeeld 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
Met deze opdrachten wordt een onmiddellijke afsluiting van alle computers in Domain01 afgedwongen.
Met de eerste opdracht wordt een lijst met computers in het domein opgeslagen en vervolgens opgeslagen in de variabele $s.
Met de tweede opdracht worden de referenties van een domeinbeheerder opgeslagen en vervolgens opgeslagen in de variabele $c.
Met de derde opdracht worden de computers afgesloten. De parameter ComputerName wordt gebruikt om de lijst met computers in de variabele $s in te dienen, de parameter Forceren om een onmiddellijke afsluiting af te dwingen en de parameter Credential om de referenties in te dienen die zijn opgeslagen in de variabele $c. Ook wordt de parameter ThrottleLimit gebruikt om de opdracht te beperken tot 10 gelijktijdige verbindingen.
Parameters
-AsJob
Geeft aan dat deze cmdlet wordt uitgevoerd als een achtergrondtaak.
Als u deze parameter wilt gebruiken, moeten de lokale en externe computers worden geconfigureerd voor externe communicatie. In Windows Vista en latere versies van het Windows-besturingssysteem moet u Windows PowerShell openen met behulp van de optie Als administrator uitvoeren. Zie about_Remote_Requirements voor meer informatie.
Wanneer u de parameter AsJob opgeeft, retourneert de opdracht onmiddellijk een object dat de achtergrondtaak vertegenwoordigt. U kunt blijven werken in de sessie terwijl de taak is voltooid. De taak wordt gemaakt op de lokale computer en de resultaten van externe computers worden automatisch geretourneerd naar de lokale computer. Gebruik de cmdlet Receive-Job om de taakresultaten op te halen.
Zie about_Jobs en about_Remote_Jobs voor meer informatie over Windows PowerShell achtergrondtaken.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Hiermee geeft u de computers die moeten worden gestopt. Standaard is dit de lokale computer.
Typ de NETBIOS-naam, het IP-adres of de Fully Qualified Domain Name van een of meer computers in een door komma's gescheiden lijst. Als u de lokale computer wilt opgeven, typt u de computernaam of localhost.
Deze parameter is niet afhankelijk van externe Windows PowerShell. U kunt de parameter ComputerName zelfs gebruiken als uw computer niet is geconfigureerd om externe opdrachten uit te voeren.
Type: | String[] |
Aliases: | CN, __SERVER, Server, IPAddress |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Confirm
Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Hiermee geeft u een gebruikersaccount op dat gemachtigd is om deze actie uit te voeren. Standaard is dit de huidige gebruiker.
Typ een gebruikersnaam, zoals User01 of Domain01\User01, of voer een PSCredential-object in, zoals een object van de cmdlet Get-Credential.
Type: | PSCredential |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DcomAuthentication
Hiermee geeft u het verificatieniveau op dat deze cmdlet gebruikt met WMI. Stop-Computer maakt gebruik van WMI. De aanvaardbare waarden voor deze parameter zijn:
- Standaard. Windows-verificatie
- Geen. Geen COM-verificatie
- Verbinding maken. COM-verificatie op verbindingsniveau
- Oproep. COM-verificatie op oproepniveau
- Pakket. COM-verificatie op pakketniveau
- PacketIntegrity. COM-verificatie op pakketintegriteitsniveau
- PacketPrivacy. COM-verificatie op pakketprivacyniveau
- Ongewijzigd. Hetzelfde als de vorige opdracht
De standaardwaarde is Pakket.
Zie AuthenticationLevel Enumeration in de MSDN-bibliotheek voor meer informatie over de waarden van deze parameter.
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
Hiermee wordt een onmiddellijke afsluiting van de computers afgestaan.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Impersonation
Hiermee geeft u het imitatieniveau op dat moet worden gebruikt wanneer deze cmdlet WMI aanroept. Stop-Computer maakt gebruik van WMI. De aanvaardbare waarden voor deze parameter zijn:
- Standaard. Standaardimitatie.
- Anonieme. Hiermee verbergt u de identiteit van de aanroeper.
- Identificeren. Hiermee kunnen objecten query's uitvoeren op de referenties van de aanroeper.
- Imiteren. Hiermee kunnen objecten de referenties van de aanroeper gebruiken.
De standaardwaarde is Imiteren.
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
Hiermee geeft u op welk protocol moet worden gebruikt om de computers opnieuw op te starten. De acceptabele waarden voor deze parameter zijn: WSMan en DCOM. De standaardwaarde is DCOM.
Deze parameter is geïntroduceerd in 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
Hiermee geeft u het maximum aantal gelijktijdige verbindingen dat tot stand kan worden gebracht om deze opdracht uit te voeren. Als u deze parameter weglaat of een waarde van 0 invoert, wordt de standaardwaarde 32 gebruikt.
De beperkingslimiet is alleen van toepassing op de huidige opdracht, niet op de sessie of op de computer.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WsmanAuthentication
Hiermee geeft u het mechanisme op dat wordt gebruikt om de gebruikersreferenties te verifiëren wanneer deze cmdlet het WSMan-protocol gebruikt. De aanvaardbare waarden voor deze parameter zijn:
- Basic
- CredSSP
- Standaard
- Samenvatting
- Kerberos
- Onderhandelen.
De standaardwaarde is Standaard.
Zie AuthenticationMechanism Enumeration in de MSDN-bibliotheek voor meer informatie over de waarden van deze parameter.
Waarschuwing: CredSSP-verificatie (Credential Security Service Provider), waarbij de gebruikersreferenties worden doorgegeven aan een externe computer om te worden geverifieerd, is ontworpen voor opdrachten waarvoor verificatie is vereist voor meer dan één resource, zoals toegang tot een externe netwerkshare. Dit mechanisme verhoogt het beveiligingsrisico van de externe bewerking. Als de externe computer is gecompromitteerd, kunnen de referenties die aan de computer worden doorgegeven, worden gebruikt om de netwerksessie te beheren.
Deze parameter is geïntroduceerd in 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 |
Invoerwaarden
None
U kunt geen invoer doorspezen naar deze cmdlet.
Uitvoerwaarden
None or System.Management.Automation.RemotingJob
De cmdlet retourneert een System.Management.Automation.RemotingJob-object als u de parameter AsJob opgeeft. Anders wordt er geen uitvoer gegenereerd.
Notities
- Deze cmdlet maakt gebruik van de Methode Win32Shutdown van de WMI-klasse Win32_OperatingSystem .
- In Windows PowerShell 2.0 werkt de parameter AsJob niet betrouwbaar wanneer u externe computers opnieuw opstart of stopt. In Windows PowerShell 3.0 is de implementatie gewijzigd om dit probleem op te lossen.