Compartir a través de


Start-Service

Inicia uno o varios servicios detenidos.

Sintaxis

InputObject (valor predeterminado)

Start-Service
    [-InputObject] <ServiceController[]>
    [-PassThru]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Default

Start-Service
    [-Name] <String[]>
    [-PassThru]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

DisplayName

Start-Service
    -DisplayName <String[]>
    [-PassThru]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

El cmdlet Start-Service envía un mensaje de inicio al controlador de servicio de Windows para cada uno de los servicios especificados. Si ya se está ejecutando un servicio, el mensaje se omite sin errores. Puede especificar los servicios por sus nombres de servicio o nombres para mostrar, o bien puede usar el parámetro InputObject para proporcionar un objeto de servicio que represente los servicios que desea iniciar.

Ejemplos

Ejemplo 1: Iniciar un servicio con su nombre

En este ejemplo se inicia el servicio EventLog en el equipo local. El parámetro Name identifica el servicio por su nombre de servicio.

Start-Service -Name "eventlog"

Ejemplo 2: Mostrar información sin iniciar un servicio

En este ejemplo se muestra lo que ocurriría si iniciaba los servicios que tienen un nombre para mostrar que incluye "remoto".

Start-Service -DisplayName *remote* -WhatIf

El parámetro DisplayName identifica los servicios por su nombre para mostrar en lugar de su nombre de servicio. El parámetro WhatIf hace que el cmdlet muestre lo que sucedería al ejecutar el comando, pero no realiza cambios.

Ejemplo 3: Iniciar un servicio y registrar la acción en un archivo de texto

En este ejemplo se inicia el servicio Instrumental de administración de Windows (WMI) en el equipo y se agrega un registro de la acción al archivo services.txt.

$s = Get-Service wmi
Start-Service -InputObject $s -PassThru | Format-List >> services.txt

En primer lugar, usamos Get-Service para obtener un objeto que represente el servicio WMI y lo almacene en la variable $s. A continuación, iniciamos el servicio. Sin el parámetro PassThru, Start-Service no crea ninguna salida. El operador de canalización (|) pasa la salida del objeto Start-Service al cmdlet Format-List para dar formato al objeto como una lista de sus propiedades. El operador de redirección append (>>) redirige la salida al archivo services.txt. La salida se agrega al final del archivo existente.

Ejemplo 4: Iniciar un servicio deshabilitado

En este ejemplo se muestra cómo iniciar un servicio cuando el tipo de inicio del servicio es Deshabilitado.

PS> Start-Service tlntsvr
Start-Service : Service 'Telnet (TlntSvr)' cannot be started due to the following error: Cannot start service TlntSvr on computer '.'.
At line:1 char:14
+ Start-Service  <<<< tlntsvr

PS> Get-CimInstance win32_service | Where-Object Name -eq "tlntsvr"
ExitCode  : 0
Name      : TlntSvr
ProcessId : 0
StartMode : Disabled
State     : Stopped
Status    : OK

PS> Set-Service tlntsvr -StartupType manual
PS> Start-Service tlntsvr

Se produce un error en el primer intento de iniciar el servicio Telnet (tlntsvr). El comando muestra que la propiedad StartMode del servicio Tlntsvr es Disabled. El cmdlet Set-Service cambia el tipo de inicio a Manual. Ahora, podemos volver a enviar el comando Start-Service. Esta vez, el comando se realiza correctamente. Para comprobar que el comando se realizó correctamente, ejecute Get-Service.

Parámetros

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:cf

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-DisplayName

Especifica los nombres para mostrar de los servicios que se van a iniciar. Se permite el uso de caracteres comodín.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False

Conjuntos de parámetros

DisplayName
Posición:Named
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Exclude

Especifica los servicios que este cmdlet omite. El valor de este parámetro condiciona el parámetro Name. Escriba un elemento de nombre o patrón, como s*. Se permite el uso de caracteres comodín.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Include

Especifica los servicios que inicia este cmdlet. El valor de este parámetro condiciona el parámetro Name. Escriba un elemento de nombre o patrón, como s*. Se permite el uso de caracteres comodín.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:True
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-InputObject

Especifica ServiceController objetos que representan los servicios que se van a iniciar. Escriba una variable que contenga los objetos, o escriba un comando o expresión que obtenga los objetos.

Propiedades de parámetro

Tipo:

ServiceController[]

Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

InputObject
Posición:0
Obligatorio:True
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Name

Especifica los nombres de servicio para que se inicie el servicio.

El nombre del parámetro es opcional. Puede usar Nombre o su alias, ServiceName, o bien puede omitir el nombre del parámetro.

Propiedades de parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:NombreDelServicio

Conjuntos de parámetros

Default
Posición:0
Obligatorio:True
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-PassThru

Devuelve un objeto que representa el servicio. De forma predeterminada, este cmdlet no genera ninguna salida.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:Wi

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

CommonParameters

Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.

Entradas

System.ServiceProcess.ServiceController, System.String

Puede canalizar objetos que representan los servicios o cadenas que contienen los nombres de servicio a este cmdlet.

Salidas

None, System.ServiceProcess.ServiceController

Este cmdlet genera un objeto System.ServiceProcess.ServiceController que representa el servicio, si especifica PassThru. De lo contrario, este cmdlet no genera ninguna salida.

Notas

  • También puede hacer referencia a Start-Service por su alias integrado, sasv. Para más información, vea about_Aliases.
  • Start-Service solo puede controlar los servicios si el usuario actual tiene permiso para hacerlo. Si un comando no funciona correctamente, es posible que no tenga los permisos necesarios.
  • Para buscar los nombres de servicio y los nombres para mostrar de los servicios en el sistema, escriba Get-Service. Los nombres de servicio aparecen en la columna Name y los nombres para mostrar aparecen en la columna DisplayName.
  • Solo puede iniciar los servicios que tienen un tipo de inicio de Manual, Automático o Automático (Inicio retrasado). No se pueden iniciar los servicios que tienen un tipo de inicio deshabilitado. Si se produce un error en un comando Start-Service con el mensaje Cannot start service \<service-name\> on computer, use Get-CimInstance para buscar el tipo de inicio del servicio y, si es necesario, use el cmdlet Set-Service para cambiar el tipo de inicio del servicio.
  • Algunos servicios, como registros de rendimiento y alertas (SysmonLog) se detienen automáticamente si no tienen ningún trabajo que hacer. Cuando PowerShell inicia un servicio que se detiene casi inmediatamente, muestra el siguiente mensaje: Service \<display-name\> start failed.