Riavvia il sistema operativo nei computer locali e remoti.

Sintassi

Restart-Computer [[-ComputerName] <string[]>] [[-Credential] <PSCredential>] [-AsJob] [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Force] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]

Descrizione

Il cmdlet Restart-Computer riavvia il sistema operativo nei computer locali e remoti.

È possibile utilizzare i parametri di Restart-Computer per eseguire le operazioni di riavvio come processo in background, per specificare i livelli di autenticazione e le credenziali alternative, per limitare le operazioni eseguite contemporaneamente e per forzare un riavvio immediato.

Per questo cmdlet non è richiesta la comunicazione remota di Windows PowerShell a meno che non si utilizzi il parametro AsJob.

Parametri

-AsJob

Esegue il comando come processo in background.

Nota: per utilizzare questo parametro, è necessario che il computer locale e quello remoto siano configurati per la comunicazione remota e, in Windows Vista e nelle versioni successive di Windows, è necessario aprire Windows PowerShell con l'opzione "Esegui come amministratore". Per ulteriori informazioni, vedere about_Remote_Requirements.

Quando si utilizza il parametro AsJob, il comando restituisce immediatamente un oggetto che rappresenta il processo in background. È possibile continuare a utilizzare la sessione durante il completamento del processo. Il processo viene creato nel computer locale e i risultati dei computer remoti vengono automaticamente restituiti nel computer locale. Per gestire il processo, utilizzare i cmdlet Job. Per ottenere i risultati del processo, utilizzare il cmdlet Receive-Job.

Per ulteriori informazioni sui processi in background di Windows PowerShell, vedere about_Jobs e about_Remote_Jobs.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Authentication <AuthenticationLevel>

Specifica il livello di autenticazione utilizzato per la connessione WMI. Restart-Computer utilizza WMI. Il valore predefinito è Packet.

I valori validi sono:

Unchanged: il livello di autenticazione è lo stesso del comando precedente.

Default: autenticazione Windows

None: nessuna autenticazione COM

Connect: autenticazione COM a livello di connessione

Call: autenticazione COM a livello di chiamata

Packet: autenticazione COM a livello di pacchetto

PacketIntegrity: autenticazione COM a livello di integrità del pacchetto

PacketPrivacy: autenticazione COM a livello di privacy del pacchetto

Obbligatorio?

false

Posizione?

named

Valore predefinito

4

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-ComputerName <string[]>

Specifica uno o più computer remoti. Il valore predefinito è il computer locale.

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 sulla comunicazione remota di Windows PowerShell. È possibile utilizzare il parametro ComputerName anche se il computer non è configurato per l'esecuzione di comandi remoti.

Obbligatorio?

false

Posizione?

1

Valore predefinito

.

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

false

-Credential <PSCredential>

Specifica un account utente con autorizzazione per l'esecuzione di questa azione. Il valore predefinito è l'utente corrente.

Digitare un nome utente, ad esempio "Utente01" o "Dominio01\Utente01", o immettere un oggetto PSCredential, ad esempio uno ottenuto dal cmdlet Get-Credential.

Obbligatorio?

false

Posizione?

2

Valore predefinito

Current user

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Force

Forza un riavvio immediato dei computer.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Impersonation <ImpersonationLevel>

Specifica il livello di rappresentazione da utilizzare per le chiamate WMI. Restart-Computer utilizza WMI. Il valore predefinito è "Impersonate".

I valori validi sono:

Default: rappresentazione predefinita.

Anonymous: nasconde l'identità del chiamante.

Identify: consente agli oggetti di eseguire query delle credenziali del chiamante.

Impersonate: consente agli oggetti di utilizzare le credenziali del chiamante.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Impersonate

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-ThrottleLimit <int>

Specifica il numero massimo di connessioni simultanee che è possibile stabilire per eseguire questo comando. Se si omette questo parametro o si immette un valore pari a 0, viene utilizzato il valore predefinito 32.

Il limite di velocità si applica solo al comando corrente, non alla sessione o al computer.

Obbligatorio?

false

Posizione?

named

Valore predefinito

32

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Confirm

Chiede una conferma prima di eseguire il comando.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-WhatIf

Descrive ciò che accadrebbe se si eseguisse il comando senza eseguirlo realmente.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

<CommonParameters>

Questo cmdlet supporta i parametri comuni -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere about_Commonparameters.

Input e output

Il tipo di input è il tipo degli oggetti che è possibile reindirizzare al cmdlet. Il tipo restituito è il tipo degli oggetti restituiti dal cmdlet.

Input

Nessuno

Non è possibile reindirizzare l'input a questo cmdlet.

Output

Nessuno o System.Management.Automation.RemotingJob

Quando si utilizza il parametro AsJob, il cmdlet restituisce un oggetto processo. In caso contrario, non genera alcun output.

Note

Questo cmdlet utilizza il metodo Win32Shutdown della classe WMI WIN32_OperatingSystem.

Esempio 1

C:\PS>restart-computer

Descrizione
-----------
Con questo comando viene riavviato il computer locale.






Esempio 2

C:\PS>restart-computer -computername Server01, Server02, localhost

Descrizione
-----------
Con questo comando vengono riavviati due computer remoti, Server01 e Server02, e il computer locale, identificato come "localhost".






Esempio 3

C:\PS>$j = restart-computer -computername Server01, Server02 -asjob 

C:\PS> $results = $j | receive-job

C:\PS> $results

Descrizione
-----------
Con questi comandi viene eseguito un comando Restart-Computer come processo in background nei due computer remoti, quindi si ottengono i risultati.

Nel primo comando viene utilizzato il parametro AsJob per eseguire il comando come processo in background. L'oggetto processo risultante viene salvato nella variabile $j.

Nel secondo comando viene utilizzato un operatore pipeline per inviare l'oggetto processo in $j al cmdlet Receive-Job, tramite cui vengono ottenuti i risultati del processo. I risultati vengono salvati nella variabile $results. 

Nel terzo comando vengono visualizzati i risultati salvati nella variabile $results.

Poiché il parametro AsJob crea il processo nel computer locale e restituisce automaticamente i risultati al computer locale, è possibile eseguire il comando Receive-Job come comando locale.






Esempio 4

C:\PS>restart-computer -comp Server01 -impersonation anonymous -authentication PacketIntegrity

Descrizione
-----------
Con questo comando viene riavviato il computer remoto Server01. Vengono utilizzate la rappresentazione personalizzata e le impostazioni di autenticazione.






Esempio 5

C:\PS>$s = get-content domain01.txt

C:\PS> $c = get-credential domain01\admin01

C:\PS> restart-computer -computername $s -force -throttlelimit 10 -credential $c

Descrizione
-----------
Questi comandi forzano un riavvio immediato in tutti i computer di Dominio01. 

Il primo comando ottiene un elenco di computer nel dominio che viene salvato nella variabile $s.

Il secondo comando ottiene le credenziali di un amministratore di dominio che vengono salvate nella variabile $c.

Il terzo comando riavvia i computer. Vengono utilizzati il parametro ComputerName per inviare l'elenco di computer nella variabile $s, il parametro Force per forzare un riavvio immediato e il parametro Credential per inviare le credenziali salvate nella variabile $c. Viene inoltre utilizzato il parametro ThrottleLimit per limitare il comando a 10 connessioni simultanee.






Vedere anche




Argomenti della Guida