我正在尝试使用以下命令将 wmi 过滤器应用于组策略:
Select * from Win32_Processor where AddressWidth = '64'
当过滤器链接时,这只会将 GPO 应用于 64 位计算机(我们所有的计算机都是 Windows 7)。但是,GPO 未应用,当我在计算机上运行 select 语句时,我得到:
Select 不被识别为内部或外部命令、可运行程序或批处理文件。
我知道这与环境变量有关,但如果是这种情况,我不确定如何分配这个特定的变量。
任何帮助将不胜感激!
答案1
答案2
正如 JdeBP 所述。您需要使用可以处理 WQL(类似 sql)语句的工具。您可以从使用 cmd.exe 命令 shell 切换到使用 powershell.exe 命令 shell 来运行查询。它提供了一个允许处理 WQL 语句的 cmdlet。试试这个:
打开命令窗口并输入Powershell
并按回车键。这将导致 powershell 实例在当前 cmd 会话中运行。现在您已进入 powershell,您可以使用 Get-WmiObject 命令行来查询您的信息:
get-wmiobject -query "select * from win32_processor where addresswidth='64'"
然后按回车键。这应该会返回您尝试获取的信息。完成后,您可以键入exit
以结束您在 cmd 会话中运行的 powershell 会话。
请注意,您也可以直接打开 Powershell,而不必通过 cmd.exe。只需在运行框或开始菜单底部的搜索字段中键入“Powershell”,屏幕上就会打开一个 powershell 窗口,就像使用 cmd.exe 一样。
如果由于某种原因您无法启动 powershell,您可以检查并确保它已安装。在我的 Win 7 安装中,它位于此处:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
希望这可以帮助,
相关阅读: