WMIC产品的名称如..." - "没有可用的实例"如果在批处理文件

时间:2016-09-27 18:28:44

标签: wmic

我想查找特定工作站上运行的Outlook版本。如果我手动运行

wmic /node:"hostname" product where "Name like '%Office Outlook%'" get Name

在命令行中,它可以工作。但是如果我从批处理文件中运行它,它将返回"没有可用的实例"。我甚至从批处理文件中删除了其他所有内容,所以只留下这一行 - 我仍然得到相同的结果。我错过了什么吗?

1 个答案:

答案 0 :(得分:7)

在批处理脚本文件中:

wmic /node:"hostname" product where "Name like '%%Office Outlook%%'" get Name

要获得证明,请在批处理文件中尝试下一步:

echo ON
wmic /node:"hostname" product where "Name like '%%Office Outlook%%'" get Name
pause

您应该看到下一个ECHO ed命令,与从命令提示符输入的命令相同:

wmic /node:"hostname" product where "Name like '%Office Outlook%'" get Name
:::::::::::::::::::::::::::::
::: some wmic output here :::
:::::::::::::::::::::::::::::
Press any key to continue . . .

有关解释,请阅读Syntax : Escape Characters, Delimiters and Quotes

  

逃避百分比

     

%字符对命令行参数有特殊含义   FOR参数。
要将批处理脚本文件中的百分比视为   常规字符,加倍:%%

同时阅读How does the Windows Command Interpreter (CMD.EXE) parse scripts?(整个主题)。