在 PowerShell 中,在我输入“pnputil.exe -e”后,我得到了一个驱动程序信息列表,如下所示。我需要从列表中获取类监视器的发布名称并将“oem8.inf”存储到 $monitor_name
中。我可以使用哪个命令来搜索 class = monitor
并将其发布的名称提取到变量中。因为“发布名称”属性有空格,所以我不知道如何使它起作用。
Published name : oem8.inf
Driver package provider : HP
Class : Monitors
Driver date and version : 07/25/2013 2.2.0.0
Signer name : Microsoft Windows Hardware Compatibility Publisher
Published name : oem6.inf
Driver package provider : Canon
Class : Printers
Driver date and version : 06/21/2006 6.1.7600.16385
Signer name : Microsoft Windows
Published name : oem1.inf
Driver package provider : Microsoft
Class : Printers
Driver date and version : 06/21/2006 10.0.14393.0
Signer name : Microsoft Windows
最佳答案
您可以通过 Get-WMIObject
cmdlet 使用 WMI 执行此操作(别名 gwmi
):
gwmi Win32_PnPSignedDriver | ? DeviceClass -eq "MONITOR"
将返回一些详细信息,您可以使用以下方法将其缩小到 InfName
:
gwmi win32_PnPSignedDriver | ? DeviceClass -eq "MONITOR" | Select InfName
InfName
-------
oem30.inf
oem30.inf
关于string - 将 pnputil 输出解析为特定类的已发布名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44415131/