Get-Service
Obtiene los servicios en el equipo local o en un equipo remoto.
Sintaxis
Get-Service [[-Name] <string[]>] [-ComputerName <string[]>] [-DependentServices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [<CommonParameters>]
Get-Service -DisplayName <string[]> [-ComputerName <string[]>] [-DependentServices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [<CommonParameters>]
Get-Service [-InputObject <ServiceController[]>] [-ComputerName <string[]>] [-DependentServices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [<CommonParameters>]
Descripción
El cmdlet Get-Service obtiene objetos que representan los servicios en un equipo local o en un equipo remoto, incluidos los servicios en ejecución y los detenidos.
Puede dirigir Get-Service para que se obtengan solamente servicios concretos especificando el nombre de servicio o el nombre para mostrar de los servicios, o puede canalizar objetos de servicio a Get-Service.
Parámetros
-ComputerName <string[]>
Obtiene los servicios que se ejecutan en los equipos especificados. El valor predeterminado es el equipo local.
Escriba el nombre NetBIOS, la dirección IP o el nombre de dominio completo de un equipo remoto. Para especificar el equipo local, escriba el nombre del equipo, un punto (.), o bien, "localhost".
Este parámetro no se basa en la comunicación remota de Windows PowerShell. Puede usar el parámetro ComputerName de Get-Service incluso si el equipo no está configurado para la ejecución de comandos remotos.
¿Requerido? |
false |
¿Posición? |
named |
Valor predeterminado |
Localhost |
¿Aceptar canalización? |
true (ByPropertyName) |
¿Aceptar caracteres comodín? |
false |
-DependentServices
Obtiene solamente los servicios que dependen del servicio especificado.
De forma predeterminada, Get-Service obtiene todos los servicios.
¿Requerido? |
false |
¿Posición? |
named |
Valor predeterminado |
False |
¿Aceptar canalización? |
false |
¿Aceptar caracteres comodín? |
false |
-DisplayName <string[]>
Especifica los nombres para mostrar de los servicios que se van a recuperar. Se permite el uso de caracteres comodín. De manera predeterminada, Get-Service obtiene todos los servicios del equipo.
¿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[]>
Recupera ú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 recuperar. Especifique la variable que contiene los objetos, o bien, escriba un comando o una expresión que obtenga los objetos. También puede canalizar un objeto de servicio a Get-Service.
¿Requerido? |
false |
¿Posición? |
named |
Valor predeterminado |
|
¿Aceptar canalización? |
true (ByValue) |
¿Aceptar caracteres comodín? |
false |
-Name <string[]>
Especifica los nombres de los servicios que se van a recuperar. Se permite el uso de caracteres comodín. De manera predeterminada, Get-Service obtiene todos los servicios del equipo.
¿Requerido? |
false |
¿Posición? |
1 |
Valor predeterminado |
|
¿Aceptar canalización? |
true (ByValue, ByPropertyName) |
¿Aceptar caracteres comodín? |
true |
-RequiredServices
Obtiene solamente los servicios que este servicio requiere.
Este parámetro obtiene el valor de la propiedad ServicesDependedOn del servicio. De forma predeterminada, Get-Service obtiene todos los servicios.
¿Requerido? |
false |
¿Posición? |
named |
Valor predeterminado |
False |
¿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 un objeto de servicio o un nombre de servicio a Get-Service. |
Salidas |
System.ServiceProcess.ServiceController Get-Service devuelve objetos que representan los servicios en el equipo. |
Notas
También puede hacer referencia a Get-Service mediante su alias integrado, "gsv". Para obtener más información, vea about_Aliases.
Get-Service sólo puede mostrar servicios si el usuario actual tiene permiso para verlos. Si Get-Service no muestra servicios, es posible que no tenga permiso para verlos.
Para buscar el nombre de servicio y el nombre para mostrar de cada servicio del sistema, escriba "get-service". Los nombres de servicio aparecen en la columna Name y los nombres para mostrar aparecen en la columna DisplayName.
Cuando se ordena de forma ascendente por valor de estado, los servicios detenidos ("Stopped") aparecen antes que los servicios en ejecución ("Running"). La propiedad Status de un servicio es un valor enumerado en el que los nombres de los estados representan valores enteros. La ordenación se basa en el valor entero, no en el nombre. "Running" aparece antes que "Stopped" porque el valor de "Stopped" es "1", mientras que el de "Running" es "4".
Ejemplo 1
C:\PS>get-service
Descripción
-----------
Este comando recupera todos los servicios del sistema. Se comporta como si se ejecutara "get-service *". La presentación predeterminada muestra el estado, el nombre de servicio y el nombre para mostrar de cada servicio.
Ejemplo 2
C:\PS>get-service wmi*
Descripción
-----------
Este comando recupera servicios con nombres de servicio que empiezan por "WMI" (acrónimo de Instrumental de administración de Windows).
Ejemplo 3
C:\PS>get-service -displayname *network*
Descripción
-----------
Este comando muestra servicios con un nombre para mostrar que incluya la palabra
"network". La búsqueda del nombre para mostrar permite buscar servicios relacionados con la red aunque el nombre del servicio no incluya la palabra "Net", como xmlprov, el servicio de suministro de red.
Ejemplo 4
C:\PS>get-service -name win* -exclude winrm
Descripción
-----------
Estos comandos solamente obtienen los servicios con nombres de servicio que empiezan por "win", salvo el servicio WinRM.
Ejemplo 5
C:\PS>get-service | where-object {$_.Status -eq "Running"}
Descripción
-----------
Este comando sólo muestra los servicios que se están ejecutando actualmente. Utiliza el cmdlet Get-Service para obtener todos los servicios en el equipo. El operador de canalización (|) pasa los resultados al cmdlet Where-Object, que selecciona únicamente los servicios cuya propiedad Status tiene el valor "Running".
Status es una de las propiedades de los objetos de servicio. Para ver todas las propiedades, escriba "get-service | get-member".
Ejemplo 6
C:\PS>get-service -computername Server02
Descripción
-----------
Este comando obtiene los servicios en el equipo remoto Server02.
Dado que el parámetro ComputerName de Get-Service no utiliza la comunicación remota de Windows PowerShell, se puede utilizar este parámetro aunque el equipo no esté configurado para la comunicación remota en Windows PowerShell.
Ejemplo 7
C:\PS>get-service | where-object {$_.DependentServices} | format-list -property Name, DependentServices, @{Label="NoOfDependentS
ervices"; Expression={$_.dependentservices.count}}
Name : AudioEndpointBuilder
DependentServices : {AudioSrv}
NoOfDependentServices : 1
Name : Dhcp
DependentServices : {WinHttpAutoProxySvc}
NoOfDependentServices : 1
...
Descripción
-----------
Estos comandos muestran los servicios en el equipo que tienen servicios dependientes.
El primer comando utiliza el cmdlet Get-Service para obtener los servicios en el equipo. Un operador de canalización (|) envía los servicios al cmdlet Where-Object, que selecciona los servicios cuya propiedad DependentServices no es NULL.
Otro operador de canalización envía los resultados al cmdlet Format-List. El comando utiliza su parámetro Property para mostrar el nombre del servicio, el nombre de los servicios dependientes y una propiedad calculada que muestra el número de servicios dependientes que cada servicio tiene.
Ejemplo 8
C:\PS>C:\PS> get-service s* | sort-object status
Status Name DisplayName
------ ---- -----------
Stopped stisvc Windows Image Acquisition (WIA)
Stopped SwPrv MS Software Shadow Copy Provider
Stopped SysmonLog Performance Logs and Alerts
Running Spooler Print Spooler
Running srservice System Restore Service
Running SSDPSRV SSDP Discovery Service
Running ShellHWDetection Shell Hardware Detection
Running Schedule Task Scheduler
Running SCardSvr Smart Card
Running SamSs Security Accounts Manager
Running SharedAccess Windows Firewall/Internet Connectio...
Running SENS System Event Notification
Running seclogon Secondary Logon
C:\PS> get-service s* | sort-object status -descending
Status Name DisplayName
------ ---- -----------
Running ShellHWDetection Shell Hardware Detection
Running SharedAccess Windows Firewall/Internet Connectio...
Running Spooler Print Spooler
Running SSDPSRV SSDP Discovery Service
Running srservice System Restore Service
Running SCardSvr Smart Card
Running SamSs Security Accounts Manager
Running Schedule Task Scheduler
Running SENS System Event Notification
Running seclogon Secondary Logon
Stopped SysmonLog Performance Logs and Alerts
Stopped SwPrv MS Software Shadow Copy Provider
Stopped stisvc Windows Image Acquisition (WIA)
Descripción
-----------
Este comando muestra que cuando se ordenan servicios de forma ascendente por el valor de su propiedad Status, los servicios detenidos aparecen antes que los servicios en ejecución. Esto sucede porque el valor de Status es una enumeración en que "Stopped" tiene el valor "1" y "Running" tiene el valor "4".
Para mostrar primero los servicios en ejecución, se ha de utilizar el parámetro Descending del cmdlet Sort-Object.
Ejemplo 9
C:\PS>get-service -name winrm -computername localhost, Server01, Server02 | format-table -property MachineName, Status, Name, DisplayName -auto
MachineName Status Name DisplayName
------------ ------ ---- -----------
localhost Running WinRM Windows Remote Management (WS-Management)
Server01 Running WinRM Windows Remote Management (WS-Management)
Server02 Running WinRM Windows Remote Management (WS-Management)
Descripción
-----------
Este comando utiliza el cmdlet Get-Service para ejecutar un comando "Get-Service Winrm" en dos equipos remotos y en el equipo local ("localhost").
El comando Get-Service se ejecuta en los equipos remotos y los resultados se devuelven en el equipo local. Un operador de canalización (|) envía los resultados al cmdlet Format-Table, que muestra los servicios en forma de tabla. El comando Format-Table utiliza el parámetro Property para especificar las propiedades que se muestran en la tabla, incluida la propiedad MachineName.
Ejemplo 10
C:\PS>get-service winrm -requiredServices
Descripción
-----------
Este comando obtiene los servicios que el servicio WinRM requiere.
El comando devuelve el valor de la propiedad ServicesDependedOn del servicio.
Ejemplo 11
C:\PS>"winrm" | get-service
Descripción
-----------
Este comando obtiene el servicio WinRM en el equipo local. En este ejemplo se muestra que se puede canalizar una cadena de nombre de servicio (incluida entre comillas) a Get-Service.
Vea también
Conceptos
Start-Service
Stop-Service
Restart-Service
Resume-Service
Suspend-Service
Set-Service
New-Service