wait(1)


wait -- プロセスの完了待ち

形式

/usr/bin/wait [pid . . .]

機能説明

このシェルスクリプトは、/u95/bin/sh シェルが実行するのと同じ名前の組み込みコマンドを実行します。詳細は、ksh(1) を参照してください。

プロセス ID が pid の値であるバックグラウンドプロセスの終了を待ち、終了状態を報告します。不明なプロセス ID を表す pid は、終了状態 127 で終了した既知のプロセス ID として扱われます。

pid がない場合、ユーザのシェルが現在実行中のすべてのバックグラウンドプロセスは待機させられます。

新しいプロセスを作成せずに、シェル自身が wait を実行します。

終了状態

wait は、次の終了状態で終了します。

wait が 1 つまたは複数の pid 引き数を指定して実行された場合、指定した全ての pid のプロセスが終了しているかまたはプロセスが実行したシェルに対して不明であり、かつ最後の pid の状態が解っていれば、終了状態は最後の pid のものになります。

wait がシグナルを受信したことにより異常終了した場合、終了状態は 128 より大きいものとなります。

そうでなければ wait は、次のいずれかの値で終了します。

0
wait が引き数なしで実行され、wait を実行するシェルに解っている全てのプロセス ID が終了した場合

1-126
エラーが検出された場合

127
最後の pid 引き数で識別されるプロセスが不明な場合

ファイル

/usr/lib/locale/locale/LC_MESSAGES/uxcore.abi
言語特有のメッセージファイル(environ(5)LANG を参照)

関連項目

ksh(1)

注意

エラーメッセージ cannot fork, too many processes を受け取った場合、バックグラウンドプロセスを整理するために wait コマンドを使用してみてください。それでもうまく働かない場合は、システムプロセステーブルがいっぱいになっているか、実行中のフォアグラウンドプロセスが多すぎるということです(ユーザのログインに対応するプロセス ID の数とシステムの管理できるプロセスの数には限度があります)。

3 段階以上のパイプラインのすべてのプロセスが、シェルの子プロセスであるとは限らないのでそれらのプロセスの終了を待つことはできません。

pid が実行中のプロセス ID でない場合、wait はすぐに終了します。


SCO UnixWare Forum Beta Release (BL12) -- September 1997
© 1997 The Santa Cruz Operation, Inc. All rights reserved.