Stop-Computer (Microsoft.PowerShell.Management)
Stop-Computer
- Módulo:
- Microsoft.PowerShell.Management
Detiene (apaga) las computadoras locales y remotas.
Sintaxis
Stop-Computer
[-WsmanAuthentication <String>]
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]Descripción
El cmdlet Stop-Computer apaga la computadora local y las computadoras remotas.
Puede utilizar los parámetros de Stop-Computer para especificar los niveles de autenticación y las credenciales alternativas, y para forzar un cierre inmediato.
En PowerShell 7.1, se agregó Stop-Computer para Linux y macOS. Los parámetros no tienen ningún efecto en estas plataformas. El cmdlet simplemente llama al comando nativo /sbin/shutdown.
Ejemplos
Ejemplo 1: apagar la computadora local
Este ejemplo apaga la computadora local.
Stop-Computer -ComputerName localhostEjemplo 2: apagar dos computadoras remotas y la computadora local
Este ejemplo detiene dos computadoras remotas y la computadora local.
Stop-Computer -ComputerName "Server01", "Server02", "localhost"Stop-Computer utiliza el parámetro ComputerName para especificar dos computadoras remotas y la computadora local. Cada computadora se apaga.
Ejemplo 3: apagar computadoras remotas como trabajo en segundo plano
En este ejemplo, Stop-Computer se ejecuta como trabajo en segundo plano en dos computadoras remotas.
El operador en segundo plano & ejecuta el comando Stop-Computer como trabajo en segundo plano. Para obtener más información, consulte about_Operadores.
$j = Stop-Computer -ComputerName "Server01", "Server02" &
$results = $j | Receive-Job
$resultsStop-Computer utiliza el parámetro ComputerName para especificar dos computadoras remotas. El operador en segundo plano & ejecuta el comando como un trabajo en segundo plano. Los objetos del trabajo se almacenan en la variable $j.
Los objetos de trabajo en la variable $j se envían por el canal a Receive-Job, que obtiene los resultados del trabajo. Los objetos se almacenan en la variable $results. La variable $results muestra la información del trabajo en la consola de PowerShell.
Ejemplo 4: apagar una computadora remota
Este ejemplo apaga una computadora remota usando la autenticación especificada.
Stop-Computer -ComputerName "Server01" -WsmanAuthentication KerberosStop-Computer utiliza el parámetro ComputerName para especificar la computadora remota. El parámetro WsmanAuthentication especifica el uso de Kerberos para establecer una conexión remota.
Ejemplo 5: apagar las computadoras en un dominio
En este ejemplo, los comandos fuerzan el apagado inmediato de todas las computadoras en un dominio específico.
$s = Get-Content -Path ./Domain01.txt
$c = Get-Credential -Credential Domain01\Admin01
Stop-Computer -ComputerName $s -Force -Credential $cGet-Content utiliza el parámetro Path para obtener un archivo en el directorio actual con la lista de computadoras del dominio. Los objetos se almacenan en la variable $s.
Get-Credential utiliza el parámetro Credential para especificar las credenciales de un administrador de dominio. Las credenciales se almacenan en la variable $c.
Stop-Computer apaga las computadoras especificadas con la lista de computadoras del parámetro ComputerName en la variable $s. El parámetro Force fuerza un apagado inmediato. El parámetro Credential envía las credenciales guardadas en la variable $c.
Parámetros
-ComputerName
Especifica las computadoras que se van a detener. El valor predeterminado es la computadora local.
Escriba el nombre NETBIOS, la dirección IP o el nombre de dominio completo de una o más computadoras en una lista separada por comas. Para especificar la computadora local, escriba el nombre de la computadora o localhost.
Este parámetro no depende de la comunicación remota de PowerShell. Puede utilizar el parámetro ComputerName incluso si su computadora no está configurada 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 confirmación antes de ejecutar el cmdlet.
- Tipo :
SwitchParameter
- Alias:
cf
- Posición:
Nombrado
- 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 Usuario01 o Dominio01\Usuario01, o introduzca un objeto PSCredential generado por Get-Credential. código> cmdlet. Si escribe un nombre de usuario, se le pedirá que ingrese 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 de SecureString, consulte ¿Qué tan seguro es SecureString?.
- Tipo :
PSCredencial
- Posición:
1
- Valor predeterminado:
Usuario actual
- Requerido:
False
- Aceptar entrada de canalización:
False
- Aceptar caracteres comodín:
False
-Force
Fuerza el apagado inmediato del ordenador.
- Tipo :
SwitchParameter
- Posición:
Nombrado
- Valor predeterminado:
False
- Requerido:
False
- Aceptar entrada de canalización:
False
- Aceptar caracteres comodín:
False
-WhatIf
Muestra lo que sucedería si se ejecuta el cmdlet. El cmdlet no se ejecuta.
- Tipo :
SwitchParameter
- Alias:
wi
- Posición:
Nombrado
- 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 del usuario cuando este cmdlet usa el protocolo WSMan. El valor predeterminado es Predeterminado.
Los valores aceptables para este parámetro son:
- Básico
- CredSSP
- Por defecto
- Digerir
- Kerberos
- Negociar.
Para obtener más información sobre los valores de este parámetro, consulte AuthenticationMechanism.
Precaución
La autenticación del Proveedor de servicios de seguridad de credenciales (CredSSP), en la que las credenciales del usuario se pasan a una computadora remota para su autenticación, 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 aumenta el riesgo de seguridad de la operación remota. Si la computadora remota está comprometida, las credenciales que se le pasan se pueden usar para controlar la sesión de red.
Este parámetro se introdujo en PowerShell 3.0.
- Tipo :
String
- Valores aceptados:
Predeterminado, Básico, Negociar, CredSSP, Resumen, Kerberos
- Posición:
Nombrado
- Valor predeterminado:
Por defecto
- Requerido:
False
- Aceptar entrada de canalización:
False
- Aceptar caracteres comodín:
False
Entradas
Ninguno
No puede canalizar objetos a este cmdlet.
Salidas
Ninguno
Este cmdlet no devuelve ningún resultado.
Notas
Este cmdlet utiliza el método Win32Shutdown de la clase WMI Win32_OperatingSystem. Este método requiere que el privilegio SeShutdownPrivilege esté habilitado para la cuenta de usuario utilizada para apagar la máquina.
En PowerShell 7.1, se agregó Stop-Computer para Linux y macOS. Para estas plataformas, el cmdlet llama al comando nativo /sbin/shutdown.