質問

一連のプロジェクトをビルドするバッチ ファイル「buildAll.bat」があります。これは、別のバッチ ファイル「manager.bat」によって呼び出されます。「buildAll.bat」ジョブは別のウィンドウで実行され、大量のテキストが出力されます。次のように、ビルド ジョブの進行状況を元のウィンドウ ('manager.bat') に表示したいとします。

プロジェクト 1 の構築...完了。プロジェクト 2 の構築...完了。プロジェクト 3 の構築...完了。...ビルドが完了しました。

2 つのジョブ間でビルドの進行状況をどのように伝達できるでしょうか?

役に立ちましたか?

解決

たとえば、一時ファイル。

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

マネージャー.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.
...

もちろん、どのようなプロジェクトが構築されているかなどに関する情報をマネージャーに伝えることで、これをさらに強力にすることができます。しかし、原理的には簡単に可能です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top