.bat脚本只执行1行

时间:2009-09-21 15:35:29

标签: command-line scripting

我正在编写一个执行相同功能多次的脚本,但是当我运行脚本时,只执行其中一个命令,而其余的命令在.bat文件运行后没有执行。

这是否与我的命令运行所需的时间(15-20秒)有关?我已经写了很多蝙蝠文件,我从来没有碰到这个。我需要在每个命令之间使用睡眠功能吗?

我一直试图在谷歌上找到这个,但我可用的搜索字词使我的搜索结果变得模糊和困难。

绝对赞赏任何帮助。

bat文件类似于以下内容

IF input1 == "search term" goto location
do something
do something
do something
etc
goto end of file
:location
do something else
do something else
do something else
...

1 个答案:

答案 0 :(得分:12)

你的“做其他事”行是否涉及调用另一个批处理文件?如果是这样,你使用CALL命令吗?

如果要以递归方式调用另一个批处理文件,则需要使用CALL。否则,当被调用的批处理文件退出时,它不会返回到调用批处理文件而只是退出。这是MS-DOS时代的遗物;由于内存非常珍贵,MS开发人员认为批处理解释器默认情况下不应该保留一个调用堆栈 - 所以如果你想要一个,你必须使用CALL。

有关详细信息,请参阅call /?