列出PowerShell中的所有服务

问题描述 投票:0回答:1

在Windows中,有一些服务(如 httpUSBStor),在您查看服务时或运行 Get-Service cmdlet。什么是最简单的方法来列出 服务,甚至是隐藏的或未上市的服务?

例如 httpUSBStor 服务在列出服务时并没有被列举出来,但可以直接通过名称访问它们。

PS C:\Windows\System32> Get-Service | Where-Object {"http","usbstor","spooler" -contains $_.Name}

Status   Name               DisplayName
------   ----               -----------
Running  Spooler            Print Spooler


PS C:\Windows\System32> Get-Service "http","usbstor","spooler"

Status   Name               DisplayName
------   ----               -----------
Running  http               HTTP Service
Running  spooler            Print Spooler
Stopped  usbstor            USB Mass Storage Driver
powershell windows-services
1个回答
2
投票

这可能不是获取所有服务的最优雅的方法(比如说隐藏),但这将给你所有的服务以及这些服务所依赖的服务。

Get-Service -RequiredServices | select -Unique DisplayName | ? {$_.DisplayName -like "Http*" }

1
投票

试试 "Get-CimInstance"。

微软提供的这种函数(Get-Service)依赖于并使用 CIMWin32 类。

(Get-Service只显示Windows服务。'HTTP'是一个系统驱动。)

Get-CimInstance 'CIM_Service'
© www.soinside.com 2019 - 2024. All rights reserved.