Stop-Computer
Encerra (desliga) computadores locais e remotos.
Syntax
Stop-Computer
[-WsmanAuthentication <String>]
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O Stop-Computer
cmdlet desliga o computador local e os computadores remotos.
Você pode usar os parâmetros de para especificar os níveis de Stop-Computer
autenticação e credenciais alternativas e forçar um desligamento imediato.
No PowerShell 7.1, Stop-Computer
foi adicionado para Linux e macOS. Os parâmetros não têm efeito sobre essas plataformas. O cmdlet está apenas chamando o comando /sbin/shutdown
nativo .
Exemplos
Exemplo 1: Desligar o computador local
Este exemplo desliga o computador local.
Stop-Computer -ComputerName localhost
Exemplo 2: Desligar dois computadores remotos e o computador local
Este exemplo interrompe dois computadores remotos e o computador local.
Stop-Computer -ComputerName "Server01", "Server02", "localhost"
Stop-Computer
usa o parâmetro ComputerName para especificar dois computadores remotos e o computador local. Cada computador é desligado.
Exemplo 3: Desligar computadores remotos como um trabalho em segundo plano
Neste exemplo, Stop-Computer
é executado como um trabalho em segundo plano em dois computadores remotos.
O operador &
em segundo plano executa o comando como um trabalho em Stop-Computer
segundo plano. Para obter mais informações, consulte about_Operators.
$j = Stop-Computer -ComputerName "Server01", "Server02" &
$results = $j | Receive-Job
$results
Stop-Computer
usa o parâmetro ComputerName para especificar dois computadores remotos. O &
operador em segundo plano executa o comando como um trabalho em segundo plano. Os objetos de trabalho são armazenados na $j
variável.
Os objetos de trabalho na $j
variável são enviados pelo pipeline para Receive-Job
, que obtém os resultados do trabalho. Os objetos são armazenados na $results
variável. A $results
variável exibe as informações do trabalho no console do PowerShell.
Exemplo 4: Desligar um computador remoto
Este exemplo desliga um computador remoto usando a autenticação especificada.
Stop-Computer -ComputerName "Server01" -WsmanAuthentication Kerberos
Stop-Computer
usa o parâmetro ComputerName para especificar o computador remoto. O parâmetro WsmanAuthentication especifica o uso de Kerberos para estabelecer uma conexão remota.
Exemplo 5: Desligar computadores em um domínio
Neste exemplo, os comandos forçam um desligamento imediato de todos os computadores em um domínio especificado.
$s = Get-Content -Path ./Domain01.txt
$c = Get-Credential -Credential Domain01\Admin01
Stop-Computer -ComputerName $s -Force -Credential $c
Get-Content
usa o parâmetro Path para obter um arquivo no diretório atual com a lista de computadores do domínio. Os objetos são armazenados na $s
variável.
Get-Credential
usa o parâmetro Credential para especificar as credenciais de um administrador de domínio. As credenciais são armazenadas na $c
variável.
Stop-Computer
desliga os computadores especificados com a lista de computadores do parâmetro ComputerName na $s
variável. O parâmetro Force força um desligamento imediato. O parâmetro Credential envia as credenciais salvas na $c
variável.
Parâmetros
-ComputerName
Especifica os computadores a serem interrompidos. O padrão é o computador local.
Digite o nome da NETBIOS, o endereço IP ou o nome de domínio totalmente qualificado de um ou mais computadores em uma lista separada por vírgulas. Para especificar o computador local, digite o nome do computador ou localhost.
Esse parâmetro não depende da comunicação remota do PowerShell. Você pode usar o parâmetro ComputerName mesmo se o computador não estiver configurado para executar comandos remotos.
Type: | String[] |
Aliases: | CN, __SERVER, Server, IPAddress |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Confirm
Solicita sua confirmação antes de executar o cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Especifica uma conta de usuário que tem 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 gerado pelo Get-Credential
cmdlet. Se você digitar um nome de usuário, será solicitado que você insira a senha.
As credenciais são armazenadas em um objeto PSCredential e a senha é armazenada como um SecureString.
Observação
Para obter mais informações sobre a proteção de dados do SecureString , consulte Quão seguro é o SecureString?.
Type: | PSCredential |
Position: | 1 |
Default value: | Current user |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Força um desligamento imediato do computador.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WsmanAuthentication
Especifica o mecanismo usado para autenticar as credenciais do usuário quando esse cmdlet usa o protocolo WSMan. O valor padrão é Default.
Os valores aceitáveis para esse parâmetro são:
- Basic
- CredSSP
- Padrão
- Digest
- Kerberos
- Negociar.
Para obter mais informações sobre os valores desse parâmetro, consulte AuthenticationMechanism.
Cuidado
A autenticação CredSSP (Credential Security Service Provider), na qual as credenciais do usuário são passadas para um computador remoto para serem autenticadas, foi projetada para comandos que exigem autenticação em mais de um recurso, como acessar um compartilhamento de rede remoto. Esse mecanismo aumenta o risco de segurança da operação remota. Se o computador remoto estiver comprometido, as credenciais que são passadas a ele podem ser usadas para controlar a sessão de rede.
Esse parâmetro foi introduzido no PowerShell 3.0.
Type: | String |
Accepted values: | Default, Basic, Negotiate, CredSSP, Digest, Kerberos |
Position: | Named |
Default value: | Default |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entradas
None
Não é possível canalizar objetos para esse cmdlet.
Saídas
None
Esse cmdlet não retorna nenhuma saída.
Observações
Este cmdlet usa o Win32Shutdown
método da Win32_OperatingSystem
classe WMI. Esse método requer que o SeShutdownPrivilege
privilégio seja habilitado para a conta de usuário usada para desligar o computador.
No PowerShell 7.1, Stop-Computer
foi adicionado para Linux e macOS. Para essas plataformas, o cmdlet chama o comando /sbin/shutdown
nativo .
Links Relacionados
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de