2009-09-21 66 views
1

我正在寫執行相同的功能幾次劇本,但是當我運行該腳本,只有一個命令執行所留下的.bat文件運行後不執行休息。.BAT腳本僅執行1線

這是否有需要在很長一段時間做我的命令來運行(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 
... 
+0

發佈您的實際批處理文件。 – JBrooks 2009-09-21 15:41:20

回答

12

請問你的「做別的事情」行一個涉及調用另一個批處理文件?如果是這樣,你使用CALL命令嗎?

如果你想遞歸調用另一個批處理文件,你需要使用CALL。否則,當被調用的批處理文件退出時,它不會返回到調用批處理文件並退出。這是MS-DOS時代的遺物;由於內存很重要,MS開發人員決定默認情況下批處理解釋器不應該保留一個調用堆棧 - 所以如果你需要的話,你必須使用CALL。

更多信息請參見call /?

+0

感謝尼克,這幾乎肯定是問題所在。我的腳本調用另一個批處理文件。一旦我發現它是否/不能解決問題,我將驗證它並重新評論。 – 2009-09-21 16:01:16

+0

就是這樣。非常感激。 – 2009-09-21 16:20:41

+0

謝謝,這解釋得很好,爲什麼只有第一行被執行:) – 2016-04-24 17:13:37