Start-Service
Inicia uno o más 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 Start-Service
cmdlet envía un mensaje de inicio al controlador de servicio de Windows para cada uno de los servicios especificados. Si un servicio ya se está ejecutando, se omite el mensaje 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 $s
variable . 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 Format-List
objeto al Start-Service
cmdlet 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 Get-CimInstance
comando muestra que la propiedad StartMode del servicio Tlntsvr es Disabled. El Set-Service
cmdlet cambia el tipo de inicio a Manual. Ahora, podemos volver a enviar el Start-Service
comando. Esta vez, el comando se ejecutará correctamente. Para comprobar que el comando se realizó correctamente, ejecute Get-Service
.
Parámetros
-Confirm
Le solicita su 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 permite el uso de 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 un patrón, como s*
. Se permite el uso de 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 un patrón, como s*
. Se permite el uso de 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 objetos ServiceController que representan los servicios que se van a iniciar. Especifique una variable que contenga los objetos o escriba un comando o una 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 de los servicios que se van a iniciar.
El nombre de parámetro es opcional. Puede usar Name 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 ningún resultado.
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 se ejecutara el cmdlet. 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 PassThru , este cmdlet devuelve un objeto ServiceController que representa el servicio.
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, puede que se deba a que no tiene 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 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
Start-Service
comando con el mensajeCannot start service \<service-name\> on computer
, useGet-CimInstance
para buscar el tipo de inicio del servicio y, si tiene que hacerlo, use elSet-Service
cmdlet 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.