Compartilhar via


Stop-Computer

Para (desliga) os computadores locais e remotos.

Sintaxe

Stop-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 Stop-Computer desliga os computadores remotamente. Ele também pode desligar os computadores locais.

Você pode usar os parâmetros de Stop-Computer para desligar operações como um trabalho em segundo plano, para especificar os níveis de autenticação e as credenciais alternativas, para limitar as conexões simultâneas criadas para executar o comando e para forçar o desligamento imediato.

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. (Stop-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[]>

Para os computadores especificados. O padrão é o computador local.

Digite o nome NETBIOS, o endereço IP ou o nome de domínio totalmente qualificado de um ou mais computadores em uma lista separada por vírgula. Para especificar o computador local, digite o nome do computador 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

Usuário atual

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-Force

Força um desligamento imediato 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. (Stop-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

Nenhum

Você não pode canalizar a entrada para este cmdlet.

Saídas

Nenhum ou System.Management.Automation.RemotingJob

Quando você usa o parâmetro AsJob, o cmdlet retorna um objeto de trabalho (System.Management.Automation.RemotingJob). 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>stop-computer

Descrição
-----------
Esse comando desliga o computador local.





Exemplo 2

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

Descrição
-----------
Esse comando para dois computadores remotos, Server01 e Server02, e o computador local, identificado como "localhost".





Exemplo 3

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

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

C:\PS> $results

Descrição
-----------
Esses comandos executam um comando Stop-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>stop-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> stop-computer -computername $s -force -throttlelimit 10 -credential $c

Descrição
-----------
Esses comandos forçam um desligamento imediato 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 desliga 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 um desligamento imediato, 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.





Consulte também

Conceitos

Add-Computer
Checkpoint-Computer
Remove-Computer
Restart-Computer
Restore-Computer
Test-Connection