Get-Service
Obtiene los servicios del equipo.
Sintaxis
Get-Service
[[-Name] <String[]>]
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Service
[-DependentServices]
[-RequiredServices]
-DisplayName <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Service
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[-InputObject <ServiceController[]>]
[<CommonParameters>]
Description
Este cmdlet solo está disponible en la plataforma Windows.
El Get-Service
cmdlet obtiene objetos que representan los servicios de un equipo, incluidos los servicios en ejecución y detenidos. De forma predeterminada, cuando Get-Service
se ejecuta sin parámetros, se devuelven todos los servicios del equipo local.
Puede dirigir este cmdlet para obtener solo servicios concretos especificando el nombre del servicio o el nombre para mostrar de los servicios, o puede canalizar objetos de servicio a este cmdlet.
Ejemplos
Ejemplo 1: Obtener todos los servicios del equipo
En este ejemplo se obtienen todos los servicios del equipo. Se comporta como si escribeste Get-Service *
. La pantalla predeterminada muestra el estado, el nombre de servicio y el nombre para mostrar de cada servicio.
Get-Service
Ejemplo 2: Obtener servicios que comienzan con una cadena de búsqueda
En este ejemplo se recuperan los servicios con nombres de servicio que comienzan por WMI
(Instrumental de administración de Windows).
Get-Service "wmi*"
Ejemplo 3: Mostrar servicios que incluyen una cadena de búsqueda
En este ejemplo se muestran los servicios con un nombre para mostrar que incluye la palabra network
. La búsqueda del nombre para mostrar busca servicios relacionados con la red incluso cuando el nombre del servicio no incluye Net
, como xmlprov, network Provisioning Service.
Get-Service -Displayname "*network*"
Ejemplo 4: Obtener servicios que comienzan con una cadena de búsqueda y una exclusión
En este ejemplo solo se obtienen los servicios con nombres de servicio que comienzan por win
, excepto para el servicio WinRM.
Get-Service -Name "win*" -Exclude "WinRM"
Ejemplo 5: Mostrar servicios que están activos actualmente
En este ejemplo solo se muestran los servicios con un estado de Running
.
Get-Service | Where-Object {$_.Status -eq "Running"}
Get-Service
obtiene todos los servicios del equipo y envía los objetos a la canalización. El Where-Object
cmdlet, selecciona solo los servicios con una propiedad Status que es igual a Running
.
Status solo es una propiedad de los objetos de servicio. Para ver todas las propiedades, escriba Get-Service | Get-Member
.
Ejemplo 6: Enumeración de los servicios en el equipo que tienen servicios dependientes
En este ejemplo se obtienen los servicios que tienen servicios dependientes.
Get-Service |
Where-Object {$_.DependentServices} |
Format-List -Property Name, DependentServices, @{
Label="NoOfDependentServices"; Expression={$_.dependentservices.count}
}
Name : AudioEndpointBuilder
DependentServices : {AudioSrv}
NoOfDependentServices : 1
Name : Dhcp
DependentServices : {WinHttpAutoProxySvc}
NoOfDependentServices : 1
...
El Get-Service
cmdlet obtiene todos los servicios del equipo y envía los objetos a la canalización. El Where-Object
cmdlet selecciona los servicios cuya propiedad DependentServices no es null.
Los resultados se envían a la canalización al Format-List
cmdlet . El parámetro Property muestra el nombre del servicio, el nombre de los servicios dependientes y una propiedad calculada que muestra el número de servicios dependientes para cada servicio.
Ejemplo 7: Ordenar servicios por valor de propiedad
En este ejemplo se muestra que cuando se ordenan los servicios en orden ascendente por el valor de su propiedad Status , los servicios detenidos aparecen antes de ejecutar los servicios. Esto sucede porque el valor de Status es una enumeración, en la que Stopped
tiene un valor de 1
y Running
tiene un valor de 4
. Para obtener más información, consulte ServiceControllerStatus.
Para enumerar primero los servicios en ejecución, use el parámetro Descendente del Sort-Object
cmdlet .
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
Ejemplo 8: Obtención de los servicios dependientes de un servicio
En este ejemplo se obtienen los servicios que requiere el servicio WinRM. Se devuelve el valor de la propiedad ServicesDependedOn del servicio.
Get-Service "WinRM" -RequiredServices
Ejemplo 9: Obtención de un servicio mediante el operador de canalización
En este ejemplo se obtiene el servicio WinRM en el equipo local. La cadena de nombre de servicio, entre comillas, se envía a la canalización a Get-Service
.
"WinRM" | Get-Service
Parámetros
-DependentServices
Indica que este cmdlet obtiene solo los servicios que dependen del servicio especificado.
Tipo: | SwitchParameter |
Alias: | DS |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-DisplayName
Especifica, como matriz de cadenas, los nombres para mostrar de los servicios que se van a recuperar. Se permiten los 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, como una matriz de cadenas, un servicio o servicios que este cmdlet excluye de la operación.
El valor de este parámetro califica el parámetro Name . Escriba un elemento de nombre o un patrón, como s*
. Se permiten los 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, como matriz de cadenas, un servicio o servicios que este cmdlet incluye en la operación. El valor de este parámetro califica el parámetro Name . Escriba un elemento de nombre o un patrón, como s*
. Se permiten los 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 los objetos ServiceController que representan los servicios que se van a recuperar. Especifique una variable que contenga los objetos o escriba un comando o una expresión que obtenga los objetos. Puede canalizar un objeto de servicio a este cmdlet.
Tipo: | ServiceController[] |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-Name
Especifica los nombres de servicio de los servicios que se van a recuperar. Se permiten los caracteres comodín.
Tipo: | String[] |
Alias: | ServiceName |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | True |
-RequiredServices
Indica que este cmdlet obtiene solo los servicios que requiere este servicio. Este parámetro obtiene el valor de la propiedad ServicesDependedOn del servicio.
Tipo: | SwitchParameter |
Alias: | SDO, ServicesDependedOn |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | True |
Entradas
Puede canalizar un objeto de servicio a este cmdlet.
Puede canalizar un nombre de servicio a este cmdlet.
Salidas
Este cmdlet devuelve objetos que representan los servicios del equipo.
Notas
PowerShell incluye los siguientes alias para Get-Service
:
- Windows:
gsv
Este cmdlet solo está disponible en plataformas Windows.
A partir de PowerShell 6.0, se agregan las siguientes propiedades a los objetos ServiceController: UserName, Description, DelayedAutoStart, BinaryPathName y StartupType .
Este cmdlet solo puede mostrar servicios cuando el usuario actual tiene permiso para verlos. Si este cmdlet no muestra servicios, es posible que no tenga permiso para verlos.
Para buscar el nombre del servicio y el nombre para mostrar de cada servicio 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 .
Nota:
Normalmente, Get-Service
devuelve información sobre los servicios y no el controlador. Sin embargo, si especifica el nombre de un controlador, Get-Service
devuelve información sobre el controlador.
- La enumeración no incluye servicios de controladores de dispositivos
- Cuando se especifica un carácter comodín, el cmdlet solo devuelve servicios de Windows.
- Si especifica el nombre o displayName que es una coincidencia exacta con un nombre de servicio de dispositivo, se devuelve la instancia del dispositivo.
Al ordenar en orden ascendente por valor de estado, Stopped
los servicios aparecen antes de Running
los servicios. 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 de Stopped
porque tiene un valor de 1
y Running
tiene un valor de 4
Stopped
. Para obtener más información, consulte ServiceControllerStatus.