Partilhar via


Get-Service

Obtém os serviços no computador.

Sintaxe

Default (Predefinição)

Get-Service
    [[-Name] <String[]>]
    [-DependentServices]
    [-RequiredServices]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [<CommonParameters>]

DisplayName

Get-Service
    -DisplayName <String[]>
    [-DependentServices]
    [-RequiredServices]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [<CommonParameters>]

InputObject

Get-Service
    [-DependentServices]
    [-RequiredServices]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-InputObject <ServiceController[]>]
    [<CommonParameters>]

Description

Este cmdlet só está disponível na plataforma Windows.

O cmdlet Get-Service obtém objetos que representam os serviços em um computador, incluindo serviços em execução e interrompidos. Por padrão, quando Get-Service é executado sem parâmetros, todos os serviços do computador local são retornados.

Você pode direcionar esse cmdlet para obter apenas serviços específicos especificando o nome do serviço ou o nome para exibição dos serviços, ou pode canalizar objetos de serviço para esse cmdlet.

Exemplos

Exemplo 1: Obter todos os serviços no computador

Este exemplo obtém todos os serviços do computador. Ele se comporta como se você tivesse digitado Get-Service *. A exibição padrão mostra o status, o nome do serviço e o nome para exibição de cada serviço.

Get-Service

Exemplo 2: Obter serviços que começam com uma cadeia de caracteres de pesquisa

Este exemplo recupera serviços com nomes de serviço que começam com WMI (Instrumentação de Gerenciamento do Windows).

Get-Service "wmi*"

Exemplo 3: Exibir serviços que incluem uma cadeia de caracteres de pesquisa

Este exemplo exibe serviços com um nome para exibição que inclui a palavra network. A pesquisa do nome de exibição localiza serviços relacionados à rede, ainda quando o nome do serviço não inclui Net, como xmlprov, o Serviço de Provisionamento de Rede.

Get-Service -DisplayName "*network*"

Exemplo 4: Obter serviços que começam com uma cadeia de caracteres de pesquisa e uma exclusão

Este exemplo obtém apenas os serviços com nomes de serviço que começam com win, exceto para o serviço WinRM.

Get-Service -Name "win*" -Exclude "WinRM"

Exemplo 5: Exibir serviços que estão ativos no momento

Este exemplo exibe apenas os serviços com status de Running.

Get-Service | Where-Object {$_.Status -eq "Running"}

Get-Service obtém todos os serviços no computador e envia os objetos pelo pipeline. O cmdlet Where-Object seleciona apenas os serviços cuja propriedade Status seja igual a Running.

Status é apenas uma propriedade de objetos de serviço. Para ver todas as propriedades, digite Get-Service | Get-Member.

Exemplo 6: Listar os serviços no computador que têm serviços dependentes

Este exemplo obtém serviços que têm serviços dependentes.

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
...

O cmdlet Get-Service obtém todos os serviços no computador e envia os objetos pelo pipeline. O cmdlet Where-Object seleciona os serviços cuja propriedade DependentServices não é nula.

Os resultados são enviados pelo pipeline para o cmdlet Format-List. O parâmetro Property exibe o nome do serviço, o nome dos serviços dependentes e uma propriedade calculada que exibe o número de serviços dependentes para cada serviço.

Exemplo 7: Classificar serviços por valor de propriedade

Este exemplo mostra que, quando se classificam os serviços em ordem crescente pelo valor da sua propriedade Status , os serviços interrompidos aparecem antes dos serviços em execução. Isso acontece porque o valor de Status é uma enumeração, na qual Stopped tem um valor de 1e Running tem um valor de 4. Para obter mais informações, consulte ServiceControllerStatus.

Para listar os serviços em execução primeiro, use o parâmetro Descending do cmdlet Sort-Object.

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

Exemplo 8: Obter os serviços que dependem de um serviço específico

Este exemplo obtém os serviços que o serviço WinRM requer. O valor da propriedade ServicesDependedOn do serviço é retornado.

Get-Service "WinRM" -RequiredServices

Exemplo 9: Obter um serviço através do operador de pipeline

Este exemplo obtém o serviço WinRM no computador local. A cadeia de caracteres do nome do serviço, entre aspas, é enviada pelo pipeline para Get-Service.

"WinRM" | Get-Service

Parâmetros

-DependentServices

Indica que esse cmdlet obtém apenas os serviços que dependem do serviço especificado.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:False
Suporta carateres universais:False
NãoMostrar:False
Aliases:DS

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-DisplayName

Especifica, como uma matriz de cadeia de caracteres, os nomes de exibição dos serviços a serem recuperados. Curingas são permitidos.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:True
NãoMostrar:False

Conjuntos de parâmetros

DisplayName
Position:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Exclude

Especifica, como uma matriz de cadeia de caracteres, um serviço ou serviços que esse cmdlet exclui da operação. O valor desse parâmetro qualifica o Name parâmetro. Insira um elemento ou padrão de nome, como s*. Curingas são permitidos.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:True
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Include

Especifica, como uma matriz de cadeia de caracteres, um serviço ou serviços que esse cmdlet inclui na operação. O valor desse parâmetro qualifica o Name parâmetro. Insira um elemento ou padrão de nome, como s*. Curingas são permitidos.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:True
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-InputObject

Especifica ServiceController objetos que representam os serviços a serem recuperados. Insira uma variável que contenha os objetos ou digite um comando ou expressão que obtenha os objetos. Você pode canalizar um objeto de serviço para esse cmdlet.

Propriedades dos parâmetros

Tipo:

ServiceController[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

InputObject
Position:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Name

Especifica os nomes de serviço dos serviços a serem recuperados. Curingas são permitidos.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:True
NãoMostrar:False
Aliases:NomeDoServiço

Conjuntos de parâmetros

Default
Position:0
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-RequiredServices

Indica que esse cmdlet obtém apenas os serviços que esse serviço exige. Este parâmetro obtém o valor da propriedade ServicesDependedOn associada ao serviço.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:False
Suporta carateres universais:True
NãoMostrar:False
Aliases:ODS, ServiçosDependedOn

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

ServiceController

Você pode canalizar um objeto de serviço para esse cmdlet.

String

Você pode canalizar um nome de serviço para esse cmdlet.

Saídas

ServiceController

Este cmdlet retorna objetos que representam os serviços no computador.

Notas

O PowerShell inclui os seguintes aliases para Get-Service:

  • Windows:
    • gsv

Este cmdlet só está disponível em plataformas Windows.

A partir do PowerShell 6.0, as seguintes propriedades são adicionadas aos objetos ServiceController: UserName, Description, DelayedAutoStart, BinaryPathNamee StartupType .

Esse cmdlet pode exibir serviços somente quando o usuário atual tiver permissão para vê-los. Se esse cmdlet não exibir serviços, talvez você não tenha permissão para vê-los.

Para encontrar o nome do serviço e o nome para exibição de cada serviço no seu sistema, digite Get-Service. Os nomes de serviço aparecem na coluna Nome, e os nomes de exibição aparecem na coluna DisplayName.

Observação

Normalmente, Get-Service retorna informações sobre serviços e não driver. No entanto, se você especificar o nome de um driver, Get-Service retorna informações sobre o driver.

  • A enumeração não inclui serviços de controlador de dispositivo
  • Quando caracteres universais são especificados, o cmdlet retorna apenas os serviços do Windows
  • Se você especificar o Name ou DisplayName que corresponda exatamente a um nome de serviço de dispositivo, a instância do dispositivo será retornada

Ao classificar em ordem crescente por valor de status, os serviços de Stopped aparecem antes dos serviços de Running. A propriedade Status de um serviço é um valor enumerado no qual os nomes dos status representam valores inteiros. A classificação é baseada no valor inteiro, não no nome. Running aparece antes de Stopped porque Stopped tem um valor de 1e Running tem um valor de 4. Para obter mais informações, consulte ServiceControllerStatus.