次のプロセスを開始する前に処理を終了する必要があるプロセスをバックグラウンドでいくつか設定しました。これを設定している間、2つのプログラムを同時に開始する必要がある1つのステップがありますが、次のステップを実行するために完了する必要があるのは、これらの1つだけです。次のステップを開始するために、2番目のプログラムを終了する必要はありません。
prog1 prog2
prog3
必要なのは、prog1が終了したときにprog3を開始し、prog2を実行し続けることです。これは可能ですか?私が試したことは、prog3を開始する前にprog2が処理を終了するのを待っていることです。
prog2 & (prog1 ; prog3) &
prog1 &; pid1=$!; prog2 &; wait $pid1; prog3