Servicio de detención de PowerShell | Conozca los ejemplos de PowerShell Stop-Service
Introducción al servicio de detención de PowerShell
El cmdlet Stop-Service en PowerShell se utiliza para detener el servicio en ejecución en la computadora local o en las computadoras remotas. Puede detener uno o varios servicios a la vez. Por ejemplo, el servicio se puede detener mediante Nombre, Nombre para mostrar o el Objeto de entrada.
Sintaxis:
El comando Stop-Service utiliza las siguientes sintaxis.
Stop-Service
[-Force]
[-NoWait]
[-Name] <String[]>
[-InputObject] <ServiceController[]>
[-DisplayName] <String[]>
[-PassThru]
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]Parámetros
Estos son los siguientes parámetros de PowerShell Stop-Service
1.-Nombre
Este parámetro se utiliza para el nombre del servicio o el nombre del alias. Puede utilizar el carácter comodín (*). Para detener varios servicios, puede separarlos con una coma (,). Por ejemplo, el servicio Print Spooler tiene el nombre de alias Spooler, como todos los demás servicios tienen sus propios nombres de alias.
2. -Nombre para mostrar
Cuando utiliza este parámetro, debe proporcionar el nombre para mostrar del servicio. Es un tipo de datos de cadena. Puede proporcionar varios nombres para mostrar separados por coma (,). Se permite el carácter comodín (*). Por ejemplo, "Instrumento de administración de Windows" es el nombre para mostrar del alias del servicio winmgmt.
3. -Objeto de entrada
Puede proporcionar múltiples servicios como una variable al parámetro del objeto de entrada para detener los servicios en las computadoras locales y remotas.
4. -Incluir
Este parámetro especifica el nombre del servicio que se incluirá al detener cualquier servicio. El valor de este parámetro califica el parámetro Nombre. Puede utilizar el carácter comodín (*). Por ejemplo, cuando especificas S*, se detendrán todos los servicios que comiencen con S.
5. -Excluir
Este parámetro especifica el nombre del servicio que se excluirá al detener cualquier servicio. El valor de este parámetro califica el parámetro Nombre. Puede utilizar el carácter comodín (*). Por ejemplo, cuando especifica S*, detendrá los servicios restantes, excluyendo los servicios que comienzan con S.
6. -Paso a través
De forma predeterminada, Stop-Service no muestra el resultado en la consola de PowerShell. Cuando utilice este parámetro, el resultado se mostrará en la consola de PowerShell.
7. -¿Y si?
Cuando se utiliza este parámetro, muestra la operación que se realizará cuando se ejecute Stop-Service, sin ejecutar el comando real.
8. -Confirmar
Este parámetro solicitará el consentimiento del usuario antes de detener los servicios. Las siguientes opciones están disponibles con el parámetro -Confirmar.
[Y] Sí [A] Sí a todos [N] No [L] No a todos [S] Suspender [?] Ayuda (el valor predeterminado es “Y”):
Y (Sí): detendrá el servicio único y, si hay varios servicios, la verificación se ejecutará nuevamente para el siguiente servicio.
A (Sí a todos): : detendrá todos los servicios proporcionados en el comando Detener-servicio .
N (No): No detendrá el servicio único y, si hay varios servicios, la verificación se ejecutará nuevamente para el siguiente servicio.
L (No a todos): No detendrá todos los servicios proporcionados en el comando Detener-Servicio .
S (Suspender): Evitará que el servicio se detenga, lo que significa que lo dejará en el estado actual.
9. -Fuerza
El uso del parámetro Force detendrá los servicios incluso si el servicio tiene los servicios dependientes en ejecución. Por lo tanto, primero detiene los servicios dependientes y, después, el servicio en sí.
10. -NoEspera
Cuando especifica el parámetro -Nowait, la consola de PowerShell no espera a que se detenga el servicio y la ejecución pasa al siguiente código.
11. -Parámetros comunes
Los siguientes parámetros comunes son compatibles con Stop-Service.
-Detallado, -Depuración, -ErrorAction, -ErrorVariable, -WarningVariable, -WarningAction, -OutBuffer, -OutVariable.
Ejemplos de servicio de detención de PowerShell
A continuación se mencionan diferentes ejemplos:
1. Cmdlet Detener servicio
Cuando simplemente escribe Stop-Service, esperará el objeto de entrada, como se muestra a continuación. El objeto de entrada puede ser el nombre de alias del servicio, el nombre para mostrar o el objeto de entrada como una variable.
Stop-Service
Salida:
2. Detener el servicio con el parámetro -Name
Puede proporcionar el nombre del servicio (nombre de alias) después del parámetro -Name. El cmdlet Stop-Service toma el nombre -Name como parámetro predeterminado. No obtendrá ningún resultado en la consola cuando detenga el servicio. Debe utilizar el comando Get-Service para recuperar el estado del servicio. También puede utilizar el parámetro -PassThru que se explica más adelante en ejemplos posteriores.
Stop-Service -Name Spooler
Get-Service SpoolerSalida:
Puede detener varios servicios separándolos con una coma (,). Por ejemplo,
Stop-Service -Name Spooler, Winmgmt, PlugPlay
Get-Service Spooler, Winmgmt, PlugPlaySalida:
También puede utilizar el carácter comodín (*).
Por ejemplo,
Stop-Service -Name Spooler, "Winmg*", "*Plug*" -PassThruSalida:
3. Detener el servicio con el parámetro -Passthru
En el ejemplo anterior, hemos visto que necesitamos usar el cmdlet Get-Service para obtener el estado del servicio. También puede utilizar el parámetro -Passthru, que muestra la salida en la propia consola.
Stop-Service -Name Spooler, Winmgmt, PlugPlay -PassThruSalida:
4. Detener el servicio con el parámetro -DisplayName
Puede proporcionar los nombres para mostrar como entrada al Detener-Servicio para detener los servicios.
Por ejemplo,
Stop-Service -DisplayName "Plug*","Print Spooler" -PassThruSalida:
5. Detener el servicio con el parámetro -InputObject
Aquí, almacenaremos algunos nombres de alias de servicio en la variable y los pasaremos al parámetro InputObject.
$services = "Spooler","Plugplay","Winmgmt"
Stop-Service -InputObject $services -PassThruSalida:
6. Detener el servicio con el parámetro -Include
En la variable proporcionada a continuación, necesitaremos detener solo el servicio "Print Spooler". Entonces, cuando usemos el parámetro -Incluir, incluirá solo el servicio Spooler.
$services = "Spooler","Plugplay","Winmgmt"
Stop-Service $services -Include "Spoo*" -PassThruSalida:
7. Detener el servicio con el parámetro -Excluir
La variable que se proporciona a continuación excluirá el servicio Spooler, por lo que los otros dos servicios se reiniciarán automáticamente.
$services = "Spooler","Plugplay","Winmgmt"
Stop-Service $services -Exclude "Spoo*" -PassThruSalida:
8. Detener el servicio con el parámetro -WhatIf
El parámetro Whatif predecirá la ejecución del comando sin ejecutarlo realmente. A continuación se muestra un ejemplo.
Stop-Service -Name Spooler -WhatIfSalida:
9. Detener el servicio con -Confirmar parámetro
Puede utilizar el parámetro -Confirm con los valores booleanos ($true o $false). Cuando especifica $true, el servicio no se detendrá, pero solicitará el consentimiento del usuario y, con $false, se detendrá el servicio.
Stop-Service -Name Spooler -Confirm:$false -PassThruSalida:
Stop-Service -Name Spooler -Confirm:$true -PassThruSalida:
10. Detener el servicio con el parámetro -Forzar
Pocos servicios tienen servicios dependientes y no se pueden detener directamente sin detener los servicios dependientes. Entonces el parámetro -Force detiene el servicio y sus servicios dependientes. Por ejemplo, el servicio Winmgmt.
Stop-Service Winmgmt -Force -PassThruSalida:
11. Detener el servicio con el parámetro -NoWait
Algunos servicios tardan en detenerse y la ejecución se detiene hasta entonces. Por ejemplo, el parámetro -NoWait se detiene en segundo plano y la ejecución pasa al siguiente código.
Por ejemplo,
Stop-Service Winmgmt -NoWait -PassThruSalida:














