Compartir a través de


Set-Service

Inicia, detiene y suspende un servicio y cambia sus propiedades.

Sintaxis

Set-Service
   [-ComputerName <String[]>]
   [-Name] <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-StartupType <ServiceStartMode>]
   [-Status <String>]
   [-PassThru]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-Service
   [-ComputerName <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   [-StartupType <ServiceStartMode>]
   [-Status <String>]
   [-InputObject <ServiceController>]
   [-PassThru]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

El Set-Service cmdlet cambia las propiedades de un servicio como Status, Description, DisplayName y StartupType. Set-Service puede iniciar, detener, suspender o pausar un servicio. Para identificar un servicio, escriba su nombre de servicio o envíe un objeto de servicio. O bien, envíe un nombre de servicio o un objeto de servicio de la canalización a Set-Service.

Ejemplos

Ejemplo 1: Cambiar un nombre para mostrar

En este ejemplo, se cambia el nombre para mostrar de un servicio. Para ver el nombre para mostrar original, use Get-Service.

Set-Service -Name LanmanWorkstation -DisplayName "LanMan Workstation"

Set-Service usa el parámetro Name para especificar el nombre del servicio, LanmanWorkstation. El parámetro DisplayName especifica el nuevo nombre para mostrar, LanMan Workstation.

Ejemplo 2: Cambiar el tipo de inicio de los servicios

En este ejemplo se muestra cómo cambiar el tipo de inicio de un servicio.

Set-Service -Name BITS -StartupType Automatic
Get-Service BITS | Select-Object -Property Name, StartType, Status

Name  StartType   Status
----  ---------   ------
BITS  Automatic  Running

Set-Service usa el parámetro Name para especificar el nombre del servicio, BITS. El parámetro StartupType establece el servicio en Automático.

Get-Service usa el parámetro Name para especificar el servicio BITS y envía el objeto a la canalización. Select-Object usa el parámetro Property para mostrar el estado del servicio BITS .

Ejemplo 3: Cambiar la descripción de un servicio

En este ejemplo se cambia la descripción del servicio BITS y se muestra el resultado.

El Get-CimInstance cmdlet se usa porque devuelve un objeto Win32_Service que incluye la descripción del servicio.

Get-CimInstance Win32_Service -Filter 'Name = "BITS"'  | Format-List  Name, Description

Name        : BITS
Description : Transfers files in the background using idle network bandwidth. If the service is
              disabled, then any applications that depend on BITS, such as Windows Update or MSN
              Explorer, will be unable to automatically download programs and other information.

Set-Service -Name BITS -Description "Transfers files in the background using idle network bandwidth."
Get-CimInstance Win32_Service -Filter 'Name = "BITS"' | Format-List  Name, Description

Name        : BITS
Description : Transfers files in the background using idle network bandwidth.

Get-CimInstance envía el objeto de la canalización a Format-List y muestra el nombre y la descripción del servicio. Con fines de comparación, el comando se ejecuta antes y después de actualizar la descripción.

Set-Service usa el parámetro Name para especificar el servicio BITS . El parámetro Description especifica el texto actualizado para la descripción de los servicios.

Ejemplo 4: Iniciar un servicio

En este ejemplo, se inicia un servicio.

Set-Service -Name WinRM -Status Running -PassThru

Status   Name               DisplayName
------   ----               -----------
Running  WinRM              Windows Remote Management (WS-Manag...

Set-Service usa el parámetro Name para especificar el servicio, WinRM. El parámetro Status usa el valor Running para iniciar el servicio. El parámetro PassThru genera un objeto ServiceController que muestra los resultados.

Ejemplo 5: Suspender un servicio

En este ejemplo se usa la canalización para pausar el servicio.

Get-Service -Name Schedule | Set-Service -Status Paused

Get-Service usa el parámetro Name para especificar el servicio Schedule y envía el objeto a la canalización. Set-Service usa el parámetro Status para establecer el servicio en Pausado.

Ejemplo 6: Detener un servicio

En este ejemplo se usa una variable para detener un servicio.

$S = Get-Service -Name Schedule
Set-Service -InputObject $S -Status Stopped

Get-Service usa el parámetro Name para especificar el servicio, Schedule. El objeto se almacena en la variable , $S. Set-Service usa el parámetro InputObject y especifica el objeto almacenado $S. El parámetro Status establece el servicio en Detenido.

Ejemplo 7: Establecimiento del tipo de inicio para varios servicios

El Set-Service cmdlet solo acepta un nombre de servicio a la vez. Sin embargo, puede canalizar varios servicios para Set-Service cambiar la configuración de varios servicios.

Get-Service SQLWriter,spooler |
    Set-Service -StartupType Automatic -PassThru |
    Select-Object Name, StartType

Name      StartType
----      ---------
spooler   Automatic
SQLWriter Automatic

Parámetros

-ComputerName

Especifica uno o más equipos. En equipos remotos, escriba el nombre NetBIOS, una dirección IP o un nombre de dominio completo. Si no se especifica el parámetro ComputerName , el comando se ejecuta en el equipo local.

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
Posición:Named
Valor predeterminado:Local computer
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Confirm

Le pide confirmación antes de ejecutar Set-Service.

Tipo:SwitchParameter
Alias:cf
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Description

Especifica una nueva descripción para el servicio.

La descripción del servicio aparece en Administración de equipos, Servicios. Descripción no es una propiedad del Get-Service objeto ServiceController. Para ver la descripción del servicio, use Get-CimInstance que devuelve un objeto Win32_Service que representa el servicio.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-DisplayName

Especifica un nombre para mostrar nuevo para el servicio.

Nota:

Normalmente, Set-Service solo funciona en servicios de Windows y no en controladores. Sin embargo, si especifica el nombre de un controlador, Set-Service puede dirigirse al controlador.

Tipo:String
Alias:DN
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-InputObject

Especifica un objeto ServiceController que representa el servicio que se va a cambiar. Escriba una variable que contenga el objeto o escriba un comando o expresión que obtenga el objeto, como un Get-Service comando. Puede usar la canalización para enviar un objeto de servicio a Set-Service.

Tipo:ServiceController
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Name

Especifica el nombre del servicio que se va a cambiar. No se permiten caracteres comodín. Puede usar la canalización para enviar un nombre de servicio a Set-Service.

Nota:

Normalmente, Set-Service solo funciona en servicios de Windows y no en controladores. Sin embargo, si especifica el nombre de un controlador, Set-Service puede dirigirse al controlador.

Tipo:String
Alias:ServiceName, SN
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-PassThru

Devuelve un objeto ServiceController que representa los servicios que se cambiaron. De forma predeterminada, Set-Service no genera ninguna salida.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-StartupType

Establece el tipo de inicio del servicio. Los valores permitidos para este parámetro son los siguientes:

  • Automático : el sistema operativo inicia o inicia el servicio en el inicio del sistema. Si un servicio iniciado automáticamente depende de un servicio iniciado de forma manual, el servicio iniciado de forma manual también se iniciará automáticamente al iniciarse el sistema.
  • Deshabilitado : el servicio está deshabilitado y no puede iniciarlo un usuario o una aplicación.
  • Manual : el servicio solo se inicia manualmente, por un usuario, mediante service Control Manager o por una aplicación.
  • Arranque : indica que el servicio es un controlador de dispositivo iniciado por el cargador del sistema. Este valor solo es válido para controladores de dispositivos.
  • Sistema : indica que el servicio es un controlador de dispositivo iniciado por la función "IOInitSystem()". Este valor solo es válido para controladores de dispositivos.

El valor predeterminado es Automático.

Tipo:ServiceStartMode
Alias:StartMode, SM, ST
Valores aceptados:Boot, System, Automatic, Manual, Disabled
Posición:Named
Valor predeterminado:Automatic
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Status

Especifica el estado del servicio.

Los valores aceptables para este parámetro son los siguientes:

  • En pausa. suspende el servicio.
  • En ejecución. inicia el servicio.
  • Detenido. detiene el servicio.
Tipo:String
Valores aceptados:Paused, Running, Stopped
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-WhatIf

Muestra lo que sucedería si Set-Service se ejecutase. 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

Entradas

ServiceController

Puede canalizar un objeto de servicio a este cmdlet.

String

Puede canalizar una cadena que contenga un nombre de servicio a este cmdlet.

Salidas

None

De forma predeterminada, este cmdlet no devuelve ninguna salida.

ServiceController

Cuando se usa el parámetro PassThru , este cmdlet devuelve un objeto ServiceController .

Notas

Set-Service requiere permisos elevados. Use la opción Ejecutar como administrador .

Set-Service solo puede controlar los servicios cuando el usuario actual tiene permisos para administrar los servicios. Si un comando no funciona correctamente, es posible que no tenga los permisos necesarios.

Para buscar el nombre de servicio o el nombre para mostrar de un servicio, use Get-Service. Los nombres de servicio se encuentran en la columna Nombre y los nombres para mostrar se encuentran en la columna DisplayName .