【发布时间】:2016-05-10 23:37:06
【问题描述】:
我正在尝试从 BATCH 文件创建卷影副本,但遇到了我无法解释的问题。
运行以下命令时:
FOR /F "tokens=3" %%A IN ('"WMIC shadowcopy call create ClientAccessible,"C:\""^| FIND /I "ShadowID"') DO SET ID=%%A
我收到以下错误
Invalid format. Hint <paramlist> = <param> [, <paramlist>].
但如果我用 FINDSTR 替换 FIND 并从我正在搜索的单词周围删除引号,它似乎可以正常工作。
FOR /F "tokens=3" %%A IN ('"WMIC shadowcopy call create ClientAccessible,"C:\""^| FINDSTR /I ShadowID') DO SET ID=%%A
谁能向我解释为什么第一个命令不起作用或者我忽略了什么以使第一个命令起作用?
是的,我知道还有很多其他方法,包括更好的方法来实现我想做的事情,但现在我只是想更好地了解我在这里缺少什么。
非常感谢
【问题讨论】:
-
不要将
wmic命令行部分(管道左侧的所有内容)包含在""中,然后像^,一样转义,。 -
谢谢,那是我忽略的。我知道这很简单。非常感谢。
标签: batch-file for-loop wmic