Riavvia il sistema operativo su computer locali e remoti.
- Sintassi
- Descrizione
- Esempi
- Esempio 1: Riavviare il computer locale
- Esempio 2: Riavviare più computer
- Esempio 3: Ottenere nomi di computer da un file di testo
- Esempio 4: Forza il riavvio dei computer elencati in un file di testo
- Esempio 6: Riavviare un computer remoto e attendere che PowerShell
- Esempio 7: Riavviare un computer utilizzando WsmanAuthentication
- Parametri
- Inputs
- Outputs
- Note
Sintassi
Descrizione
Il cmdlet Restart-Computer
riavvia il sistema operativo sui computer locali e remoti.
È possibile utilizzare i parametri di Restart-Computer
per eseguire le operazioni di riavvio, per specificare i livelli di autenticazione e le credenziali alternative, per limitare le operazioni eseguite contemporaneamente e per forzare un riavvio immediato.
A partire da Windows PowerShell 3.0, è possibile attendere il completamento del riavvio prima di eseguire nextcommand. Specificare un intervallo di timeout e query di attesa e attendere che determinati servizi siano disponibili sul computer riavviato. Questa caratteristica rende pratico l’uso di inscritti e funzioni Restart-Computer
.
Esempi
Esempio 1: Riavviare il computer locale
Restart-Computer
riavvia il computer locale.
Restart-Computer
Esempio 2: Riavviare più computer
Restart-Computer
può riavviare computer remoti e locali. Il parametro ComputerName accetta anarray di nomi di computer.
Restart-Computer -ComputerName Server01, Server02, localhost
Esempio 3: Ottenere nomi di computer da un file di testo
Restart-Computer
ottiene un elenco di nomi di computer da un file di testo e riavvia i computer. Il parametro Computername non è specificato. Ma poiché è il primo parametro di posizione, essoaccetta i nomi del computer dal file di testo che vengono inviati lungo la pipeline.
Get-Content -Path C:\Domain01.txt | Restart-Computer
Get-Content
utilizza il parametro Path per ottenere un elenco di nomi di computer da un file di testo,Domain01.txt. I nomi dei computer vengono inviati lungo la pipeline. Restart-Computer
riavvia ogni computer.
Esempio 4: Forza il riavvio dei computer elencati in un file di testo
Questo esempio forza un riavvio immediato dei computer elencati nel fileDomain01.txt
. I nomi dei computer dal file di testo sono memorizzati in una variabile. Il parametro Forza forza il riavvio di animmediate.
Get-Content
utilizza il parametro Path per ottenere un elenco di nomi di computer da un file di testo,Domain01.txt. I nomi dei computer sono memorizzati nella variabile $Names
Get-Credential
richiede un nome utente e una password e memorizza i valori nella variabile$Creds
Restart-Computer
utilizza i parametri ComputerName e Credential con le loro variabili. Il Forceparameter provoca un riavvio immediato di ogni computer.
Esempio 6: Riavviare un computer remoto e attendere che PowerShell
Restart-Computer
riavvia il computer remoto e quindi attende fino a 5 minuti (300 secondi) che PowerShell diventi disponibile sul computer riavviato prima di continuare.
Restart-Computer -ComputerName Server01 -Wait -For PowerShell -Timeout 300 -Delay 2
Restart-Computer
utilizza il parametro ComputerName per specificare Server01. Waitparameter attende il completamento del riavvio. Il For specifica che PowerShell può eseguire comandi sul computer remoto. Il parametro Timeout specifica un’attesa di cinque minuti. Il parametro delayquerizza il computer remoto ogni due secondi per determinare se viene riavviato.
Esempio 7: Riavviare un computer utilizzando WsmanAuthentication
Restart-Computer
riavvia il computer remoto utilizzando il meccanismo WsmanAuthentication.L’autenticazione Kerberos determina se l’utente corrente dispone dell’autorizzazione per riavviare il remotecomputer. Per ulteriori informazioni, Vedereauthenticationmechanism.
Restart-Computer -ComputerName Server01 -WsmanAuthentication Kerberos
Restart-Computer
utilizza il parametro ComputerName per specificare il computer remoto, Server01.Il parametro WsmanAuthentication specifica il metodo di autenticazione come Kerberos.
Parametri
Specifica un nome di computer o una matrice separata da virgole di nomi di computer. Restart-Computer
Accetta oggetti computername dalla pipeline o dalle variabili.
Digitare il nome NetBIOS, un indirizzo IP o un nome di dominio completo di un computer remoto. Per specificare il computer locale, digitare il nome del computer ,un punto .
o localhost.
Questo parametro non si basa sul remoting PowerShell. È possibile utilizzare il parametro ComputerName anche se il computer non è configurato per eseguire comandi remoti.
Se il parametro ComputerName non è specificato, Restart-Computer
riavvia il computer locale.
Tipo: | String |
Alias: | CN, __SERVER, Server, Indirizzo ip |
Posizione: | 0 |
valore Predefinito: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Prompts you for confirmation before running Restart-Computer
.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifica un account utente che ha il permesso di eseguire questa azione. Il valore predefinito è l’utente corrente.
Digitare un nome utente, ad esempio User01 o Domain01\User01, oppure immettere un oggetto PSCredential generato dal cmdletGet-Credential
. Se si digita un nome utente, viene richiesto di inserire ilpassword.
Le credenziali vengono memorizzate in un oggetto PSCredentialobject e la password viene memorizzata come SecureString.
Note
For more information about SecureString data protection, seeHow secure is SecureString?.
Type: | PSCredential |
Position: | 1 |
Default value: | Current user |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the frequency of queries, in seconds. PowerShell interroga il servizio specificato dal parametro theFor per determinare se il servizio è disponibile dopo il riavvio del computer.
Questo parametro è valido solo insieme ai parametri Wait e For.
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Se il parametro Delay non è specificato, Restart-Computer
utilizza un ritardo di cinque secondi.
Tipo: | Int16 |
Posizione: | Nome |
valore Predefinito: | Nessuno |
Accettare l’input della pipeline: | False |
Accetta caratteri jolly: | False |
Specifica il comportamento di PowerShell in attesa che il servizio o la funzionalità specificati diventino disponibili dopo il riavvio del computer. Questo parametro è valido solo con il parametro Wait.
I valori accettabili per questo parametro sono:
- Default: Attende il riavvio di PowerShell.
- PowerShell: può eseguire comandi in una sessione remota PowerShell sul computer.
- WMI: Riceve una risposta a una query Win32_ComputerSystem per il computer.
- WinRM: Può stabilire una sessione remota al computer utilizzando WS-Management.
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Tipo: | WaitForServiceTypes |
valori Accettati: | Wmi, gestione remota windows PowerShell |
Posizione: | Nome |
valore Predefinito: | Nessuno |
Accettare input: | False |
Accetta i caratteri jolly: | False |
Forces an immediate restart of the computer.
Type: | SwitchParameter |
Aliases: | f |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the duration of the wait, in seconds. Al termine del timeout,Restart-Computer
ritorna al prompt dei comandi, anche se i computer non vengono riavviati.
Il parametro Timeout è valido solo con il parametro Wait. Timeout sovrascrive il periodo di attesa indefinito del parametro theWait.
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Tipo: | Int32 |
Alias: | TimeoutSec |
Posizione: | Nome |
valore di Default: | Nessuno |
Accettare l’input della pipeline: | False |
Accetta i caratteri jolly: | False |
Restart-Computer
sopprime prompt di PowerShell e blocca la pipeline fino a quando il computer haverestarted. È possibile utilizzare questo parametro in uno script per riavviare i computer e quindi continuare a elaborarequando il riavvio è terminato.
Il parametro Wait attende indefinitamente il riavvio dei computer. È possibile utilizzare Timeout per regolare i tempi e i parametri For e Delay per attendere che determinati servizi diventino disponibili sui computer riavviati.
Il parametro Wait non è valido quando si riavvia il computer locale. Se il valore del parametro theComputerName contiene i nomi dei computer remoti e del computer locale,Restart-Computer
genera un errore di non terminazione per Wait sul computer locale, ma attende il riavvio dei computer remoti.
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Shows what would happen if the Restart-Computer
runs. The Restart-Computer
cmdlet isn’t run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Nome |
valore Predefinito: | False |
Accettare input: | False |
Accetta i caratteri jolly: | False |
Specifica il meccanismo che viene utilizzato per autenticare le credenziali dell’utente. Questo parametro è statointrodotto in Windows PowerShell 3.0.
I valori accettabili per questo parametro sono: Basic, CredSSP, Default, Digest,Kerberos e Negotiate.
Per ulteriori informazioni, Vedereauthenticationmechanism.
Avviso
L’autenticazione CredSSP (Credential Security Service Provider), in cui le credenziali dell’utente vengono passate a un computer remoto per essere autenticate, è progettata per i comandi che richiedono l’autenticazione su più di una risorsa, ad esempio l’accesso a una condivisione di rete remota. Questo meccanismoaumenta il rischio per la sicurezza dell’operazione remota. Se il computer remoto è compromesso, i potenziali che vengono passati ad esso possono essere utilizzati per controllare la sessione di rete.
Tipo: | Stringa |
Valori accettati: | Basic, CredSSP, Default, Digest, Kerberos, Negotiate |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
String
Restart-Computer
accepts computer names from the pipeline or variables.
Outputs
None
Restart-Computer
doesn’t generate any output.
Note
- In Windows,
Restart-Computer
utilizza il metodo Win32Shutdown della Win32_OperatingSystemclass di Windows Management Instrumentation (WMI). Questo metodo richiede che il privilegio SeShutdownPrivilege sia abilitato per l’utente accountused per riavviare il computer. - Su Linux e Mac OS,
Restart-Computer
utilizza lo strumento bash/sbin/shutdown
.
- Informazioni sulla gestione remota di Windows
- Get-Credential
- WS-Management Protocol