プログラマとプロマネのあいだ

プログラマもやるし、プロマネもやるし、たまに似非アーキとか営業っぽいこともやる

cshでバックグラウンドプロセスを待ち合わせる

シェルでバックグラウンドプロセスを待ち合わせることって出来る?と聞かれて、psコマンドの出力をgrepでひっかけるというやり方で書いてみたんですが、なんかwaitとかいう命令で出来るとかで、逆に教えられることになってしまいました。。

以下、サンプル。

■a.csh

#!/usr/bin/csh

echo "a.csh start"

./b.csh &
./b.csh &

wait

echo "a.csh end"

■b.csh

#!/usr/bin/csh

echo "b.csh start"

sleep 2

echo "b.csh end"

■実行例

$ ./a.csh
a.csh start
[1] 3924
[2] 1940
b.csh start
b.csh start
b.csh end
b.csh end
[2]    Done                          ./b.csh
[1]  + Done                          ./b.csh
a.csh end
$