バッチファイル(バッチファイル)から2つのプログラムを起動したい - 数秒間実行する。次に、メインバッチファイルで、両方が終了してからメイン実行を続けるのを待っています。それはまったく可能ですか?Windowsのバッチファイルでフォークできますか?
7
A
答えて
7
あなたは、並べ替えのことができます。
@echo off
set Token=MAIN_%RANDOM%_%CD%
start "%Token%_1" cmd /c child1.cmd
start "%Token%_2" cmd /c child2.cmd
:loop
ping -n 2 localhost >nul 2>nul
tasklist /fi "WINDOWTITLE eq %Token%_1" | findstr "cmd" >nul 2>nul && set Child1=1 || set Child1=
tasklist /fi "WINDOWTITLE eq %Token%_2" | findstr "cmd" >nul 2>nul && set Child2=1 || set Child2=
if not defined Child1 if not defined Child2 goto endloop
goto loop
:endloop
echo Both children died.
child1
とchild2
はちょうどpause
を実行していました。これは多かれ少なかれ一意のトークンを使用して子バッチファイルを識別します。それらはstart
で独自のウィンドウで開始され、それぞれに特定のウィンドウタイトルが与えられます。そのウィンドウタイトルを使用して、tasklist
を使用して再度検索し、それらがまだ実行中かどうかを判断できます。
バッチファイルがまだ実行されているかどうかを調べるのはやや難解です。 tasklist
は、ウィンドウのタイトルフィルタを使用して実行されますが、賢明なエラーレベルは返されません。そのため、プロセス名を取得するためにfindstr
にパイプする必要があります(エラーメッセージをピックアップして言語に敏感でないようにするため)。
+0
それは動作します!まだスケジュールされたタスクとして動作するかどうかは分かりますか? – Helvio
関連する問題
- 1. Windowsのmongodbフォーク
- 2. Windowsサーバー2003のWindowsサービスからバッチファイルを実行できませんOS
- 3. のWindows 10は、Windows 10ではバッチファイル
- 4. 2つのcmd Windowsをどのように接続できますか? [バッチファイル]
- 5. Windowsバッチファイル名でファイルをコピー
- 6. 、Windowsのバッチファイルが
- 7. テキストファイル、Windowsのバッチファイル
- 8. IIS 8(windows server 2012)はバッチファイルを実行できません
- 9. WindowsのPowerShellスクリプトをバッチファイルで実行することができません
- 10. Windows環境でCygwinでpybotバッチファイルを実行できない
- 11. バッチファイルでWindowsサービスをインストールしていますか?
- 12. Windowsバッチファイルで%〜d0とは何を意味しますか?
- 13. フォークするか、フォークしないのですか?
- 14. Windowsでバッチファイルを自動起動する
- 15. Windowsサービスでバッチファイルを実行する
- 16. Windowsのバッチファイル、タスクは
- 17. iと%% Windowsバッチファイル
- 18. パイプをフォークなしで使用できますか?
- 19. Windowsのバッチファイルで応答をキャッチ
- 20. txtファイルのテキストをWindowsのバッチファイルで検索して置き換えます
- 21. Windowsタスクスケジューラはwinzipの内部でバッチファイルを実行できますが、起動コマンドは使用できません
- 22. フォークされたリポジトリの削除を回復できますか?
- 23. Debian:フォークできません(メモリ問題)
- 24. WindowsバッチファイルでOK = Nとは何ですか?
- 25. 改行を置き換えるWindowsバッチファイル
- 26. Windowsのコマンドラインに小さな(5行以上の)バッチファイルを書き込むことはできますか?
- 27. リポジトリをフォークすると、元のプロジェクトからフォークを切断することができます
- 28. WindowsバッチファイルからANSI互換のコンソールを検出しますか?
- 29. FTPユーザー名| (パイプ)Windowsのバッチファイル
- 30. Zipファイルは、Windowsのバッチファイル
http://stackoverflow.com/questions/2572176/how-to-make-the-batch-file-wait-until-another-batch-file-completes-execution –
@DmitriyBotov:* one *バッチ用ですしかし、ファイルのみ。彼らは同時に2つを走らせたいと思っていて、* both *が止まったら実行を続けます。 – Joey