Stop-Computer
Detiene (apaga) los equipos locales y remotos.
Sintaxis
Stop-Computer
[-WsmanAuthentication <String>]
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
El Stop-Computer
cmdlet apaga el equipo local y los equipos remotos.
Puede usar los parámetros de para especificar los niveles de Stop-Computer
autenticación y las credenciales alternativas y forzar un apagado inmediato.
En PowerShell 7.1, Stop-Computer
se agregó para Linux y macOS. Los parámetros no tienen ningún efecto en estas plataformas. El cmdlet simplemente llama al comando /sbin/shutdown
nativo .
Ejemplos
Ejemplo 1: Apagar el equipo local
En este ejemplo se apaga el equipo local.
Stop-Computer -ComputerName localhost
Ejemplo 2: Apagar dos equipos remotos y el equipo local
En este ejemplo se detienen dos equipos remotos y el equipo local.
Stop-Computer -ComputerName "Server01", "Server02", "localhost"
Stop-Computer
usa el parámetro ComputerName para especificar dos equipos remotos y el equipo local. Cada equipo está apagado.
Ejemplo 3: Apagar equipos remotos como trabajo en segundo plano
En este ejemplo, Stop-Computer
se ejecuta como un trabajo en segundo plano en dos equipos remotos.
El operador &
en segundo plano ejecuta el Stop-Computer
comando como un trabajo en segundo plano. Para obtener más información, consulte about_Operators.
$j = Stop-Computer -ComputerName "Server01", "Server02" &
$results = $j | Receive-Job
$results
Stop-Computer
usa el parámetro ComputerName para especificar dos equipos remotos. El &
operador en segundo plano ejecuta el comando como un trabajo en segundo plano. Los objetos de trabajo se almacenan en la $j
variable .
Los objetos de trabajo de la $j
variable se envían a la canalización a Receive-Job
, que obtiene los resultados del trabajo. Los objetos se almacenan en la $results
variable . La $results
variable muestra la información del trabajo en la consola de PowerShell.
Ejemplo 4: Apagar un equipo remoto
En este ejemplo se apaga un equipo remoto mediante la autenticación especificada.
Stop-Computer -ComputerName "Server01" -WsmanAuthentication Kerberos
Stop-Computer
usa el parámetro ComputerName para especificar el equipo remoto. El parámetro WsmanAuthentication especifica usar Kerberos para establecer una conexión remota.
Ejemplo 5: Apagar equipos en un dominio
En este ejemplo, los comandos fuerzan un apagado inmediato de todos los equipos de un dominio especificado.
$s = Get-Content -Path ./Domain01.txt
$c = Get-Credential -Credential Domain01\Admin01
Stop-Computer -ComputerName $s -Force -Credential $c
Get-Content
usa el parámetro Path para obtener un archivo en el directorio actual con la lista de equipos de dominio. Los objetos se almacenan en la $s
variable .
Get-Credential
usa el parámetro Credential para especificar las credenciales de un administrador de dominio. Las credenciales se almacenan en la $c
variable .
Stop-Computer
apaga los equipos especificados con la lista de equipos del parámetro ComputerName de la $s
variable . El parámetro Force fuerza un apagado inmediato. El parámetro Credential envía las credenciales guardadas en la $c
variable .
Parámetros
-ComputerName
Especifica los equipos que se van a detener. La opción predeterminada es el equipo local.
Escriba el nombre NETBIOS, la dirección IP o el nombre de dominio completo de uno o varios equipos en una lista separada por comas. Para especificar el equipo local, escriba el nombre del equipo o localhost.
Este parámetro no se basa en la comunicación remota de PowerShell. Puede usar el parámetro ComputerName incluso si el equipo no está configurado para ejecutar comandos remotos.
Tipo: | String[] |
Alias: | CN, __SERVER, Server, IPAddress |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-Confirm
Le solicita su confirmación antes de ejecutar el cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Credential
Especifica una cuenta de usuario que tiene permiso para realizar esta acción. El valor predeterminado es el usuario actual.
Escriba un nombre de usuario, como User01 o Domain01\User01, o escriba un objeto PSCredential generado por el Get-Credential
cmdlet . Si escribe un nombre de usuario, se le pedirá que escriba la contraseña.
Las credenciales se almacenan en un objeto PSCredential y la contraseña se almacena como SecureString.
Nota:
Para obtener más información sobre la protección de datos SecureString , consulte ¿Cómo es secure is SecureString?.
Tipo: | PSCredential |
Posición: | 1 |
Valor predeterminado: | Current user |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Force
Fuerza un apagado inmediato del equipo.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-WhatIf
Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.
Tipo: | SwitchParameter |
Alias: | wi |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-WsmanAuthentication
Especifica el mecanismo que se usa para autenticar las credenciales de usuario cuando este cmdlet usa el protocolo WSMan. El valor predeterminado es Default.
Los valores permitidos para este parámetro son los siguientes:
- Básico
- CredSSP
- Valor predeterminado
- Digest
- Kerberos
- Negociar.
Para obtener más información sobre los valores de este parámetro, vea AuthenticationMechanism.
Precaución
La autenticación del proveedor de servicios de seguridad de credenciales (CredSSP), en la que las credenciales de usuario se pasan a un equipo remoto para autenticarse, está diseñada para comandos que requieren autenticación en más de un recurso, como el acceso a un recurso compartido de red remoto. Este mecanismo el riesgo de seguridad de la operación remota. Si el equipo remoto se ve comprometido, las credenciales que se pasen a él se pueden utilizar para controlar la sesión de red.
Este parámetro se introdujo en PowerShell 3.0.
Tipo: | String |
Valores aceptados: | Default, Basic, Negotiate, CredSSP, Digest, Kerberos |
Posición: | Named |
Valor predeterminado: | Default |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
Entradas
None
No se pueden canalizar objetos a este cmdlet.
Salidas
None
Este cmdlet no devuelve ningún resultado.
Notas
Este cmdlet usa el Win32Shutdown
método de la Win32_OperatingSystem
clase WMI. Este método requiere que el SeShutdownPrivilege
privilegio esté habilitado para la cuenta de usuario que se usa para apagar la máquina.
En PowerShell 7.1, Stop-Computer
se agregó para Linux y macOS. Para estas plataformas, el cmdlet llama al comando /sbin/shutdown
nativo .