Inicia uno o más servicios detenidos.

Sintaxis

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

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

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

Descripción

El cmdlet Start-Service envía un mensaje de inicio al controlador de servicios de Windows para cada uno de los servicios especificados. Si un servicio ya está en ejecución, se omitirá el mensaje y no se generará un error. Puede especificar los servicios por su nombre de servicio o por su nombre para mostrar, o puede usar el parámetro InputObject para suministrar un objeto de servicio que represente a los servicios que desee iniciar.

Parámetros

-DisplayName <string[]>

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

¿Requerido?

true

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-Exclude <string[]>

Omite los servicios especificados. El valor de este parámetro califica el parámetro Name. Escriba un patrón o un elemento del nombre, como "s*". Se permite el uso de caracteres comodín.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-Include <string[]>

Inicia únicamente los servicios especificados. El valor de este parámetro califica el parámetro Name. Escriba un patrón o un elemento del nombre, como "s*". Se permite el uso de caracteres comodín.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-InputObject <ServiceController[]>

Especifica objetos ServiceController que representan los servicios que se van a iniciar. Especifique la variable que contiene los objetos, o bien, escriba un comando o una expresión que obtenga los objetos.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

true (ByValue)

¿Aceptar caracteres comodín?

false

-Name <string[]>

Especifica el nombre de servicio del servicio que se va a iniciar.

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

¿Requerido?

true

¿Posición?

1

Valor predeterminado

¿Aceptar canalización?

true (ByValue, ByPropertyName)

¿Aceptar caracteres comodín?

false

-PassThru

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

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-Confirm

Solicita confirmación antes de ejecutar el comando.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-WhatIf

Describe lo que ocurriría si se ejecutara el comando sin ejecutarlo realmente.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

<CommonParameters>

Este cmdlet admite los parámetros comunes: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer y -OutVariable. Para obtener más información, vea about_Commonparameters.

Entradas y salidas

El tipo de entrada es el tipo de los objetos que se pueden canalizar al cmdlet. El tipo devuelto es el tipo de los objetos que el cmdlet devuelve.

Entradas

System.ServiceProcess.ServiceController, System.String

Puede canalizar objetos que representan los servicios o cadenas que contienen los nombres de servicio a Start-Service.

Salidas

Ninguno o System.ServiceProcess.ServiceController

Cuando se usa el parámetro PassThru, Start-Service genera un objeto System.ServiceProcess.ServiceController que representa el servicio. En caso contrario, este cmdlet no genera resultados.

Notas

También puede hacer referencia a Start-Service mediante su alias integrado, "sasv". Para obtener más información, vea about_Aliases.

Start-Service solo puede controlar los servicios si el usuario actual tiene permiso para ello. Si un comando no funciona correctamente, es posible que no tenga los permisos necesarios.

Para obtener los nombres de servicio y los nombres para mostrar de los servicios del sistema, escriba "Get-Service". Los nombres de servicio aparecen en la columna Name y los nombres para mostrar aparecen en la columna DisplayName.

Solo se pueden iniciar los servicios que tengan un tipo de inicio "Manual" o "Automatic". No se pueden iniciar servicios con un tipo de inicio "Disabled". Si un comando Start-Service no se ejecuta correctamente y muestra el mensaje "No se puede iniciar el servicio <nombreDeServicio> en el equipo", use un comando Get-WmiObject para buscar el tipo de inicio del servicio y, si es necesario, use un comando Set-Service para cambiar el tipo de inicio del servicio.

Algunos servicios, como Registros y alertas de rendimiento (SysmonLog), se detienen automáticamente si no tienen que realizar ningún trabajo. Cuando Windows PowerShell inicia un servicio que se detiene casi inmediatamente, muestra el siguiente mensaje: "Error al iniciar el servicio <nombre-para-mostrar>."

Ejemplo 1

C:\PS>start-service -name eventlog

Descripción
-----------
Este comando inicia el servicio EventLog en el equipo local. Usa el parámetro Name para identificar el servicio por su nombre de servicio.






Ejemplo 2

C:\PS>start-service -displayname *remote* -whatif

Descripción
-----------
Este comando indica lo que sucedería si se iniciaran los servicios con un nombre para mostrar que incluyese la palabra "remote". Utiliza el parámetro DisplayName para especificar los servicios por su nombre para mostrar en lugar de por su nombre de servicio. Y utiliza el parámetro WhatIf para indicar lo que sucedería si se ejecutara el comando sin ejecutarlo realmente.






Ejemplo 3

C:\PS>$s = get-service wmi

C:\PS>start-service -InputObject $s -passthru | format-list >> services.txt

Descripción
-----------
Estos comandos inician el servicio Instrumental de administración de Windows (WMI) en el equipo y agregan un registro de la acción al archivo services.txt. El primer comando usa el cmdlet Get-Service para obtener un objeto que represente al servicio WMI y almacenarlo en la variable $s. 

El segundo comando usa el cmdlet Start-Service para iniciar el servicio WMI. Identifica el servicio mediante el parámetro InputObject para pasar la variable $s que contiene el objeto de servicio WMI a Start-Service. A continuación, usa el parámetro PassThru para crear un objeto que represente el inicio del servicio. Sin este parámetro, Start-Service no produce ningún resultado.

El operador de canalización (|) pasa el objeto creado por Start-Service al cmdlet Format-List, que aplica al objeto el formato de lista de propiedades. El operador de redirección para anexar (>>) redirige la salida al archivo services.txt, donde se agrega al final del archivo existente.






Ejemplo 4

C:\PS># start-service

Descripción
-----------
Esta serie de comandos muestra la forma de iniciar un servicio cuando el tipo de inicio del servicio es "Disabled". El primer comando, que utiliza el cmdlet Start-Service para iniciar el servicio Telnet (tlntsvr), sufre un error al ejecutarse.

C:\PS>start-service tlntsvr

Start-Service: el servicio 'Telnet (TlntSvr)' no se puede iniciar debido al error siguiente: No se puede iniciar el servicio TlntSvr en el equipo '.'
En línea:1 carácter:14
+ start-service  <<<< tlntsvr

El segundo comando usa el cmdlet Get-WmiObject para obtener el servicio Tlntsvr. Este comando recupera un objeto con la propiedad de tipo de inicio en el campo StartMode. La presentación resultante indica que el tipo de inicio del servicio Tlntsvr es "Disabled".

C:\PS> get-wmiobject win32_service | where-object {$_.Name -eq "tlntsvr"}

ExitCode  : 0
Name      : TlntSvr
ProcessId : 0
StartMode : Disabled
State     : Stopped
Status    : OK

El siguiente comando usa el cmdlet Set-Service para cambiar el tipo de inicio del servicio Tlntsvr a "Manual".

C:\PS> set-service tlntsvr -startuptype manual

Ahora puede volver a enviar el comando Start-Service. Esta vez el comando se ejecuta correctamente.

C:\PS> start-service tlntsvr

Para comprobar si el comando se ejecutó correctamente, utilice Get-Service.






Vea también




Tabla de contenido