以下PowerShell命令将为我提供所有Windows服务的列表:
Get-WmiObject -Class Win32_Service
如果我想使用此对象仅显示某个特定服务怎么办?假设我想用它来显示假脱机程序服务。我不想使用Get-Service
cmdlet。思考Select-Object
会对我有所帮助,但只会选择属性名称,而不是服务名称。
答案 0 :(得分:1)
Get-WmiObject -Class win32_Service | Where-Object Name -eq 'spooler'
或
Get-WmiObject -Class win32_Service | Select-Object * | Where-Object Name -eq 'spooler'
答案 1 :(得分:1)
虽然使用Get-WmiObject
过滤Where-Object
输出将起作用,但如果您对远程主机运行cmdlet,则会对性能产生负面影响,因为所有输出都将在网络过滤之前通过网络发送当地主人。使用Get-WmiObject
直接过滤效率更高,因此只检索相关数据:
Get-WmiObject -Class Win32_Service -Filter "Name='spooler'"