Búsqueda de sitios web

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 Spooler

Salida:

Puede detener varios servicios separándolos con una coma (,). Por ejemplo,

Stop-Service -Name Spooler, Winmgmt, PlugPlay
Get-Service Spooler, Winmgmt, PlugPlay

Salida:

También puede utilizar el carácter comodín (*).

Por ejemplo,

Stop-Service -Name Spooler, "Winmg*", "*Plug*" -PassThru

Salida:

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 -PassThru

Salida:

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" -PassThru

Salida:

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 -PassThru

Salida:

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*" -PassThru

Salida:

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*" -PassThru

Salida:

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 -WhatIf

Salida:

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 -PassThru

Salida:

Stop-Service -Name Spooler -Confirm:$true -PassThru

Salida:

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 -PassThru

Salida:

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 -PassThru

Salida:

Artículos relacionados