我正在尝试为我经常执行的任务编写一个小的批处理文件。我以前从未使用过for
,这是我第一次尝试使用它。到目前为止,这是我自带的:
for /f %i in ('ct find . -ver lbtype(%1) -print') do ct lsvt -g %i
基本上,它会尝试查找具有给定cleracase标签的所有文件,然后显示这些文件的版本树。问题出在
%1
中。但是,当我尝试在某个时间运行此命令时,出现一条错误消息,表明未预期到-print )
,或者有时在其他情况下,它仅在命令提示符下打印此命令。我猜它在多个同构之间变得困惑了。有什么线索可以解决吗? 最佳答案
尝试引用for
中正在执行的命令:
for /f %i in ('"ct find . -ver lbtype(%1) -print"') do ct lsvt -g %i
这对于我使用带括号的args的类似命令很有用。
另外,(您可能已经知道),当您将命令放入批处理文件而不是在命令行中运行时,您需要对
'%'
变量的for
字符加倍:for /f %%i in ('"ct find . -ver lbtype(%1) -print"') do ct lsvt -g %%i
关于windows - 在批处理文件中编写循环的语法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2763627/