在批处理文件中编写循环的语法

时间:2010-05-04 07:46:53

标签: windows batch-file dos

我正在尝试为我经常执行的任务编写一个小批处理文件。我之前从未使用for这是我第一次尝试这个。这是我到目前为止所得到的:

for /f %i in  ('ct find . -ver lbtype(%1) -print') do ct lsvt -g %i

基本上它尝试查找具有给定cleracase标签的所有文件,然后显示这些文件的版本树。问题出在%1。但是当我尝试运行它时,它会给我一个错误,指出-print )不是预期的,或者有时候只是在命令提示符下打印此命令。我想它在多个paranthesis之间变得混乱。有什么线索我如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

尝试引用您在for中执行的命令:

for /f %i in  ('"ct find . -ver lbtype(%1) -print"') do ct lsvt -g %i

这对于我所做的类似命令起了作用。

另外,(您可能已经知道),当您将命令放入批处理文件而不是运行时,您需要对'%'变量的for字符加倍它在命令行:

for /f %%i in  ('"ct find . -ver lbtype(%1) -print"') do ct lsvt -g %%i