windows – 如何打开新的cmd窗口并在其中执行for循环?

我有一个带有以下命令的test.cmd文件:

call "cmd /c start echo foo && pause"
call "cmd /c start for /l %%x in (0, 1, 2) do python test.py config%%x"

第一个命令工作正常,表明一般方法应该有效.带有for循环的第二个给了我麻烦.

当我直接在CMD窗口中运行此命令(在迭代器之前只有一个%符号)时,它会在循环中按预期在新的CMD窗口中启动我的python脚本“test.py”3次.

当我从test.cmd运行相同的命令时(这次当然是2%),新的CMD窗口会弹出并立即消失.我没有收到任何错误消息,也无法保留新窗口.

我怀疑我需要做更多的编码,但我无法弄清楚正确的语法.从test.cmd运行这个for循环,我必须做些什么改变?

如果你坚持使用调用,还有另一级别的解析,所以在批处理文件中你必须使用:

call "cmd /k start for /l %%%%i in (1,1,10) do echo %%%%i"

(用/ k替换/ c来查看输出)

相关文章
相关标签/搜索