shのwait

  • wait の後に$!で取出したプロセスIDを複数指定すると, 終了を待つプロセスを選択できる.
  • ただし, wait発行の時点でバックグラウンドプロセスがまだ終了していないことが必要
    • 終了している場合, 存在しないプロセスを待つ事になるためwaitが終らない
    • 幾つかバックグラウンドプロセスを発行し, 全てを待つわけではない場合, 発行している間に終ってしまうプロセスもあり, これを待たないようにするか, sleep などでwait発行まで終らないように足止めする
    • 単にwaitだけの場合, その時点で終了していないバックグラウンドプロセスのみを待つため, この問題は生じない