Stop-Computer
Arresta (arresta) computer locali e remoti.
Sintassi
All
Stop-Computer
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-WsmanAuthentication <String>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Descrizione
Il cmdlet Stop-Computer arresta il computer locale e i computer remoti.
È possibile usare i parametri di Stop-Computer per specificare i livelli di autenticazione e le credenziali alternative e per forzare l'arresto immediato.
In PowerShell 7.1 è stato aggiunto Stop-Computer per Linux e macOS. Le piattaforme non Windows hanno solo i parametri WhatIf, Confirm e CommonParameters . Il cmdlet chiama semplicemente il comando nativo /sbin/shutdown.
Esempio
Esempio 1: Arrestare il computer locale
In questo esempio viene arrestato il computer locale.
Stop-Computer -ComputerName localhost
Esempio 2: Arrestare due computer remoti e il computer locale
In questo esempio vengono arrestati due computer remoti e il computer locale.
Stop-Computer -ComputerName "Server01", "Server02", "localhost"
Stop-Computer usa il parametro ComputerName per specificare due computer remoti e il computer locale. Ogni computer viene arrestato.
Esempio 3: Arrestare i computer remoti come processo in background
In questo esempio, Stop-Computer viene eseguito come processo in background in due computer remoti.
L'operatore in background & esegue il comando Stop-Computer come processo in background. Per ulteriori informazioni, vedere about_Operators.
$j = Stop-Computer -ComputerName "Server01", "Server02" &
$results = $j | Receive-Job
$results
Stop-Computer usa il parametro ComputerName per specificare due computer remoti. L'operatore in background & esegue il comando come processo in background. Gli oggetti processo vengono archiviati nella variabile $j.
Gli oggetti processo nella variabile $j vengono inviati nella pipeline a Receive-Job, che ottiene i risultati del processo. Gli oggetti vengono archiviati nella variabile $results. La variabile $results visualizza le informazioni sul processo nella console di PowerShell.
Esempio 4: Arrestare un computer remoto
In questo esempio viene arrestato un computer remoto usando l'autenticazione specificata.
Stop-Computer -ComputerName "Server01" -WsmanAuthentication Kerberos
Stop-Computer usa il parametro nomecomputer per specificare il computer remoto. Il parametro WsmanAuthentication specifica l'uso di Kerberos per stabilire una connessione remota.
Esempio 5: Arrestare i computer in un dominio
In questo esempio, i comandi forzano l'arresto immediato di tutti i computer in un dominio specificato.
$s = Get-Content -Path ./Domain01.txt
$c = Get-Credential -Credential Domain01\Admin01
Stop-Computer -ComputerName $s -Force -Credential $c
Get-Content usa il parametro Path per ottenere un file nella directory corrente con l'elenco dei computer di dominio. Gli oggetti vengono archiviati nella variabile $s.
Get-Credential usa il parametro credenziali per specificare le credenziali di un amministratore di dominio. Le credenziali vengono archiviate nella variabile $c.
Stop-Computer arresta i computer specificati con l'elenco dei computer NomeComputer nella variabile $s. Il parametro Force forza un arresto immediato. Il parametro credenziali invia le credenziali salvate nella variabile $c.
Parametri
-ComputerName
Specifica i computer da arrestare. Il valore predefinito è il computer locale.
Digitare il nome NETBIOS, un indirizzo IP o un nome di dominio completo di uno o più computer in un elenco delimitato da virgole. Per specificare il computer locale, digitare il nome del computer o localhost.
Questo parametro non si basa sul remoting di PowerShell. È possibile usare il parametro ComputerName anche se il computer non è configurato per eseguire comandi remoti.
Questo parametro è disponibile solo nelle piattaforme Windows.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | Cina, __SERVER, Servidor, Indirizzo IP |
Set di parametri
(All)
| Posizione: | 0 |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | cfr |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Credential
Specifica un account utente autorizzato a eseguire questa azione. Il valore predefinito è l'utente corrente.
Digitare un nome utente, ad esempio User01 o Domain01\User01oppure immettere un oggetto PSCredential generato dal cmdlet Get-Credential. Se si digita un nome utente, viene richiesto di immettere la password.
Le credenziali vengono archiviate in un oggetto PSCredential e la password viene archiviata come SecureString.
Annotazioni
Per ulteriori informazioni sulla protezione dei dati di SecureString, vedere Quanto è sicuro SecureString?.
Questo parametro è disponibile solo nelle piattaforme Windows.
Proprietà dei parametri
| Tipo: | PSCredential |
| Valore predefinito: | Current user |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | 1 |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Force
Forza un arresto immediato del computer.
Questo parametro è disponibile solo nelle piattaforme Windows.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-WhatIf
Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | Wi |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-WsmanAuthentication
Specifica il meccanismo utilizzato per autenticare le credenziali utente quando questo cmdlet usa il protocollo WSMan. Il valore predefinito è Default.
I valori accettabili per questo parametro sono:
- Fondamentale
- CredSSP
- Predefinito
- Sommario
- Kerberos
- Negoziare.
Per altre informazioni sui valori di questo parametro, vedere AuthenticationMechanism.
Attenzione
L'autenticazione CredSSP (Credential Security Service Provider), in cui le credenziali utente vengono passate a un computer remoto da autenticare, è progettato per i comandi che richiedono l'autenticazione su più di una risorsa, ad esempio l'accesso a una condivisione di rete remota. Questo meccanismo aumenta il rischio di sicurezza dell'operazione remota. Se il computer remoto viene compromesso, è possibile usare le credenziali passate per controllare la sessione di rete.
Questo parametro è stato introdotto in PowerShell 3.0. Questo parametro è disponibile solo nelle piattaforme Windows.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | Default |
| Valori accettati: | Default, Basic, Negotiate, CredSSP, Digest, Kerberos |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
CommonParameters
Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.
Input
None
Gli oggetti non possono essere inviati tramite pipe a questo cmdlet.
Output
None
Questo cmdlet non restituisce alcun output.
Note
Questo cmdlet usa il metodo win32Shutdown della classe WMI Win32_OperatingSystem. Questo metodo richiede che il privilegio SeShutdownPrivilege sia abilitato per l'account utente usato per arrestare il computer.
In PowerShell 7.1 è stato aggiunto Stop-Computer per Linux e macOS. Per queste piattaforme, il cmdlet chiama il comando nativo /sbin/shutdown.