Связь между параллельными пакетными файлами - PullRequest
1 голос
/ 12 мая 2010

У меня есть пакетный файл buildAll.bat, который создает набор проектов.Он будет вызван другим командным файлом, 'manager.bat'.Задание buildAll.bat выполняется в другом окне и выводит много текста.Я хочу, чтобы ход выполнения задания сборки отображался в исходном окне ('manager.bat'), например:

Создание проекта 1 ... выполненоСтроительный проект 2 ... сделано.Строительный проект 3 ... сделано.... Сборка завершена.

Как можно сообщить о ходе сборки между двумя заданиями?

1 Ответ

3 голосов
/ 12 мая 2010

Временные файлы, например.

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.
...

Конечно, это можно сделать гораздо более мощным, передав информацию о том, какие проекты создаются, и так далее менеджеру. Но в принципе это легко возможно.

...