【问题标题】:Select a certain Windows service using WMI objects使用 WMI 对象选择某个 Windows 服务
【发布时间】:2017-03-22 01:23:20
【问题描述】:

以下 PowerShell 命令将为我提供所有 Windows 服务的列表:

Get-WmiObject -Class Win32_Service

如果我想用这个对象只显示一个特定的服务怎么办?可以说我只想用它来显示后台处理程序服务。我不想使用Get-Service cmdlet。认为Select-Object 会帮助我,但这只会选择属性名称,而不是服务名称。

【问题讨论】:

    标签: powershell wmi get-wmiobject


    【解决方案1】:
    Get-WmiObject -Class win32_Service | Where-Object Name -eq 'spooler'
    

    Get-WmiObject -Class win32_Service | Select-Object * | Where-Object Name -eq 'spooler'
    

    【讨论】:

    • 谢谢!我还发现这基本上会给出与您的第二个示例相同的结果:Get-WmiObject -Class win32_Service | Where-Object Name -eq 'spooler' | fl *
    【解决方案2】:

    虽然使用Where-Object 过滤Get-WmiObject 输出会起作用,但如果您对远程主机运行该cmdlet,则会对性能产生负面影响,因为在本地主机上过滤之前,所有输出都将通过网络发送。直接用Get-WmiObject过滤效率更高,这样只取到相关数据:

    Get-WmiObject -Class Win32_Service -Filter "Name='spooler'"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-23
      • 1970-01-01
      • 2023-03-21
      • 1970-01-01
      • 2017-12-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多