Reinicia ("reinicializa") o sistema operacional em computadores locais e remotos.
Sintaxe
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>]
Descrição
O cmdlet Restart-Computer reinicia o sistema operacional em computadores locais e remotos.
Você pode usar os parâmetros de Restart-Computer para executar as operações de reinicialização como um trabalho de segundo plano, para especificar os níveis de autenticação e credenciais alternativas, para limitar as operações que são executadas simultaneamente e para forçar uma reinicialização imediata.
Este cmdlet não requer a comunicação remota do Windows PowerShell a menos que você use o parâmetro AsJob.
Parâmetros
-AsJob
Executa o comando como um trabalho em segundo plano.
Observação: para usar esse parâmetro, os computadores local e remoto devem estar configurados para comunicação remota e, no Windows Vista e versões mais recentes do Windows, é necessário abrir o Windows PowerShell com a opção "Executar como administrador". Para obter mais informações, consulte about_Remote_Requirements.
Quando você usa o parâmetro AsJob, o comando imediatamente retorna um objeto que representa o trabalho em segundo plano. É possível continuar a trabalhar na sessão enquanto o trabalho é concluído. O trabalho é criado no computador local e os resultados de computadores remotos são automaticamente retornados ao computador local. Para gerenciar o trabalho, use os cmdlets Job. Para obter os resultados do trabalho, use o cmdlet Receive-Job.
Para obter mais informações sobre os trabalhos em segundo plano do Windows PowerShell, consulte about_Jobs e about_Remote_Jobs.
Necessário? |
false |
Posição? |
named |
Valor padrão |
|
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-Authentication <AuthenticationLevel>
Especifica o nível de autenticação usado para a conexão WMI. (Restart-Computer usa WMI.) O valor padrão é Packet.
Os valores válidos são:
Unchanged: o nível de autenticação é igual ao do comando anterior.
Default: autenticação Windows
None: sem autenticação COM
Connect: autenticação COM de nível de conexão
Call: autenticação COM de nível de chamada
Packet: autenticação COM de nível de pacote.
PacketIntegrity: autenticação COM de nível de Integridade de Pacote
PacketPrivacy: autenticação COM de nível de Privacidade de Pacote.
Necessário? |
false |
Posição? |
named |
Valor padrão |
4 |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-ComputerName <string[]>
Especifica um ou mais computadores remotos. O padrão é o computador local.
Digite o nome NETBIOS, um endereço IP ou um nome de domínio totalmente qualificado de um computador remoto. Para especificar o computador local, digite o nome do computador, um ponto (.) ou "localhost".
Este parâmetro não se baseia na comunicação remota do Windows PowerShell. É possível usar o parâmetro ComputerName mesmo que o seu computador não esteja configurado para executar comandos remotos.
Necessário? |
false |
Posição? |
1 |
Valor padrão |
. |
Aceitar entrada do pipeline? |
true (ByPropertyName) |
Aceitar caracteres curinga? |
false |
-Credential <PSCredential>
Especifica uma conta de usuário com permissão para executar essa ação. O padrão é o usuário atual.
Digite um nome de usuário, como "User01" ou "Domain01\User01" ou insira um objeto PSCredential, como aquele do cmdlet Get-Credential.
Necessário? |
false |
Posição? |
2 |
Valor padrão |
Current user |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-Force
Força uma reinicialização imediata dos computadores.
Necessário? |
false |
Posição? |
named |
Valor padrão |
False |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-Impersonation <ImpersonationLevel>
Especifica o nível de representação a ser usado ao chamar WMI. (Restart-Computer usa WMI.) O valor padrão é "Impersonate".
Os valores válidos são:
Default: representação padrão.
Anonymous: oculta a identidade do chamador.
Identify: permite que os objetos consultem as credenciais do chamador.
Impersonate: permite que os objetos usem as credenciais do chamador.
Necessário? |
false |
Posição? |
named |
Valor padrão |
Impersonate |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-ThrottleLimit <int>
Especifica o número máximo de conexões simultâneas que podem ser estabelecidas para executar esse comando. Se você omitir esse parâmetro ou inserir um valor igual a 0, o valor padrão, 32, será usado.
O limite se aplica somente ao comando atual, não à sessão ou ao computador.
Necessário? |
false |
Posição? |
named |
Valor padrão |
32 |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-Confirm
Solicita confirmação antes da execução do comando.
Necessário? |
false |
Posição? |
named |
Valor padrão |
|
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-WhatIf
Descreve o que aconteceria se você executasse o comando, sem executá-lo de fato.
Necessário? |
false |
Posição? |
named |
Valor padrão |
|
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
<CommonParameters>
Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.
Entradas e saídas
O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.
Entradas |
None Você não pode canalizar a entrada para este cmdlet. |
Saídas |
None ou System.Management.Automation.RemotingJob Quando você usa o parâmetro AsJob, o cmdlet retorna um objeto de trabalho. Caso contrário, ele não gera nenhuma saída. |
Observações
Este cmdlet usa o método Win32Shutdown da classe WMI WIN32_OperatingSystem.
Exemplo 1
C:\PS>restart-computer Descrição ----------- Esse comando reinicia o computador local.
Exemplo 2
C:\PS>restart-computer -computername Server01, Server02, localhost Descrição ----------- Esse comando reinicia dois computadores remotos, Server01 e Server02, e o computador local, identificado como "localhost".
Exemplo 3
C:\PS>$j = restart-computer -computername Server01, Server02 -asjob C:\PS> $results = $j | receive-job C:\PS> $results Descrição ----------- Esses comandos executam um comando Restart-Computer como um trabalho em segundo plano em dois computadores remotos e, em seguida, obtém os resultados. O primeiro comando usa o parâmetro AsJob para executar o comando como um trabalho em segundo plano. O comando salva o objeto de trabalho resultante na variável $j. O segundo comando usa um operador de pipeline para enviar o objeto de trabalho em $j para o cmdlet Receive-Job, que obtém os resultados do trabalho. O comando salva os resultados na variável $results. O terceiro comando exibe o resultado salvo na variável $results. Como o parâmetro AsJob cria o trabalho no computador local e retorna automaticamente os resultados para esse computador, você pode executar o comando Receive-Job como um comando local.
Exemplo 4
C:\PS>restart-computer -comp Server01 -impersonation anonymous -authentication PacketIntegrity Descrição ----------- Esse comando reinicia o computador remoto Server01. O comando usa configurações de autenticação e representação personalizadas.
Exemplo 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 Descrição ----------- Esses comandos forçam uma reinicialização imediata de todos os computadores em Domain01. O primeiro comando obtém uma lista de computadores no domínio e salva-a na variável $s. O segundo comando obtém as credenciais de um administrador de domínio e as salva na variável $c. O terceiro comando reinicia os computadores. Ele usa o parâmetro ComputerName para enviar a lista de computadores na variável $s, o parâmetro Force para forçar uma reinicialização imediata, e o parâmetro Credential para enviar as credenciais salvas na variável $c. Ele também usa o parâmetro ThrottleLimit para limitar o comando a 10 conexões simultâneas.
See Also