2013-03-13 173 views
0

我正在尋找與批處理腳本的任務,任何人都可以幫忙嗎?交錯批處理腳本處理

我有一個主批處理腳本,它調用build.bat。當構建腳本被調用(啓動cmd/k build.bat)時,它執行構建。然後它返回到主要的 執行其餘的任務。建設需要很長時間。

是否有可能開始構建並回到main並在main中完成一些任務並返回到Build.bat?

謝謝!

回答

1

不完全。你必須提取你想要並行運行的主腳本部分,你不能來回跳。

Main --> build task --> more main 
    --> part of main | 
+0

聰明的簽名!很酷! – paulsm4 2013-03-13 01:08:08

+0

您好,主席先生, 感謝您的答覆。 我可以得到一個例子。 Main.bat 啓動CMD/K LABEL1:的build.bat 某些命令 開始CMD/K LABEL2:的build.bat 構建。蝙蝠 :Label1的 命令 :Label2的 命令 感謝和問候, – user2150777 2013-03-13 01:48:43

+0

是正確的? – user2150777 2013-03-13 01:53:27

0

「命令窗口」可能不是您要查找的單詞。

但是,一個.bat文件可以調用另一個,然後返回第一個。

神奇的是使用關鍵字 「呼」 當你調用孩子.bat或.cmd文件:

PS:

如果你正在做軟件構建,我強烈建議您考慮使用「Makefile」腳本而不是使用.bat文件。恕我直言......

+0

我們實際運行ant build 。我想做一些手動清理和xcopy等,我想批量自動化這些東西。 – user2150777 2013-03-13 02:07:06

0

你可以 - 在某種程度上。

爲自己設定了一批像WAIT4F.BAT

@ECHO OFF 
:: Wait for file %1 
IF "%~1"=="" GOTO :eof 
:loop 
IF NOT EXIST "%~1" choice /t 1 /d y /n >NUL&GOTO loop 

只需插入CALL WAIT4F filename有一批等待,直到另一個已創建的文件(大概是在完成一個步驟)

這樣,批量暫停直到並行進程完成其任務,因此可以同時運行兩個(或更多!)批處理。它的優點是創建的文件可以包含允許批處理進行通信的信息,例如錯誤級別。

個人而言,我創建%TEMP%

如果你正在使用Vista以前,到位的選擇命令的使用PING -n 2 127.0.0.1 >nul的(SE)標誌文件(S)(它只是一個延遲)