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 $