题
我有一个批处理文件,“buildAll.bat”,即建立一组项目。它将由另一个批处理文件,“manager.bat”被调用。该“buildAll.bat”在另一个窗口中执行作业和输出大量的文字。 我要显示在原始窗口构建作业的进度(“manager.bat”),像这样的:
建筑项目1 ...完成。 建设项目2 ...完成。 建设项目3 ...完成。 ... 构建完成。
如何构建进展两个作业之间传送?
解决方案
临时文件,例如
<强> buildAll.cmd 强>
del /Q %TEMP%\Project*Done>nul 2>&1
...
rem build project 1
copy nul %TEMP%\Project1Done >nul
rem build project 2
copy nul %TEMP%\Project2Done >nul
...
<强> manager.cmd 强>
...
<nul set /p X=Building project 1 ...
:waitforproject1
if exists %TEMP%\Project1Done goto project1done
ping -n 1 localhost >nul 2>&1
goto waitforproject1
:project1done
echo done.
<nul set /p X=Building project 2 ...
:waitforproject2
if exists %TEMP%\Project2Done goto project2done
ping -n 1 localhost >nul 2>&1
goto waitforproject2
:project2done
echo done.
...
当然,这可以通过中继什么项目的构建等方面的管理信息做出更强大。但原则上它很容易成为可能。
不隶属于 StackOverflow