0

我正在寻找批处理脚本的一些任务,有人可以帮忙吗?

我有一个主批处理脚本,它调用了 build.bat。当调用构建脚本(start cmd /k build.bat)时,它会执行构建。然后它会返回到 Main 来完成剩下的任务。构建需要很长时间。

是否可以开始构建并返回 main 并在 main 中完成某些任务并返回 Build.bat ?

谢谢 !

4

3 回答 3

1

不完全的。您必须提取要并行运行的主脚本部分,不能来回跳跃。

Main --> build task    --> more main
     --> part of main  |
于 2013-03-13T01:02:35.370 回答
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% 中创建(se)标志文件

如果您使用的是 pre-Vista,请使用PING -n 2 127.0.0.1 >nulCHOICE 命令代替(这只是延迟)

于 2013-03-13T03:48:30.783 回答
0

“命令行窗口”可能不是您要找的词。

但是是的,一个 .bat 文件可以调用另一个,然后返回到第一个。

魔术是在调用子 .bat 或 .cmd 文件时使用关键字“call”:

PS:

如果您正在构建软件,我强烈建议您考虑使用“Makefile”脚本而不是使用 .bat 文件。恕我直言...

于 2013-03-13T01:02:58.050 回答