Start-Service
Inicia uno o varios servicios detenidos.
Sintaxis
Start-Service
[-InputObject] <ServiceController[]>
[-PassThru]
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Start-Service
[-Name] <String[]>
[-PassThru]
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Start-Service
[-PassThru]
-DisplayName <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Este cmdlet solo está disponible en la plataforma Windows.
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 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.
Tipo: | SwitchParameter |
Alias: | cf |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-DisplayName
Especifica los nombres para mostrar de los servicios que se van a iniciar. Se permiten caracteres comodín.
Tipo: | String[] |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | True |
-Exclude
Especifica los servicios que este cmdlet omite. El valor de este parámetro califica el parámetro Name. Escriba un elemento de nombre o patrón, como s*
. Se permiten caracteres comodín.
Tipo: | String[] |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | True |
-Include
Especifica los servicios que inicia este cmdlet. El valor de este parámetro califica el parámetro Name. Escriba un elemento de nombre o patrón, como s*
. Se permiten caracteres comodín.
Tipo: | String[] |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | True |
-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.
Tipo: | ServiceController[] |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | 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.
Tipo: | String[] |
Alias: | ServiceName |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-PassThru
Devuelve un objeto que representa el servicio. De forma predeterminada, este cmdlet no genera ninguna salida.
Tipo: | SwitchParameter |
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 el cmdlet se ejecuta. 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
Puede canalizar un objeto de servicio a este cmdlet.
Puede canalizar una cadena que contenga el nombre del servicio a este cmdlet.
Salidas
None
De forma predeterminada, este cmdlet no devuelve ninguna salida.
Cuando se usa el parámetro
Notas
PowerShell incluye los siguientes alias para Start-Service
:
- Windows:
sasv
Este cmdlet solo está disponible en plataformas Windows.
-
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 Nombre dey los nombres para mostrar aparecen en la columna DisplayName de . - 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 mensajeCannot start service \<service-name\> on computer
, useGet-CimInstance
para buscar el tipo de inicio del servicio y, si es necesario, use el cmdletSet-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.