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