sleep(1) FreeBSD 一般コマンドマニュアル

sleep

前のページ 上に戻る 次のページ

sleep




解説

     sleep コマンドは、少なくとも seconds で指定した秒数だけ実行を停止します。

     sleep コマンドがシグナルを受信すると標準の動作を行います。


実装に関する注

     この実装においては、 SIGALRM シグナルは特別には扱われません。

     sleep コマンドは、非整数の数値で指定された秒数を受け付けて、これを尊重し
     ます。 (小数点として `.' 文字を使用します)。 B>こB>れB>はB>ポB>ーB>タB>ブB>ルB>でB>はB>なB>いB>拡B>張
     B>でB>すB>。B>こB>れB>をB>使B>用B>すB>るB>シB>ェB>ルB>スB>クB>リB>プB>トB>はB>、B>他B>のB>シB>スB>テB>ムB>でB>正B>しB>くB>実B>行B>でB>きB>なB>い
     B>こB>とB>をB>、B>ほB>ぼB>保B>証B>でB>きB>まB>すB>。


診断

     sleep コマンドは終了時に以下の値のいずれかを返します。

     0     正常終了した場合。

     >0    エラーが起きた場合。


使用例

     あるコマンドの実行を x 秒後に設定したい場合:

           (sleep 1800; sh command_file >& errors)&

     上記の例では、command_file で指定したスクリプトを実行する前に 30 分間待ち
     ます( at(1) ユーティリティの項を参照)。

     あるコマンドを( csh(1) を使って)繰り返し実行したい場合:

           while (1)
                   if (! -r zzz.rawdata) then
                           sleep 300
                   else
                           foreach i (`ls *.rawdata`)
                                   sleep 70
                                   awk -f collapse_data $i >> results
                           end
                           break
                   endif
           end

     このようなスクリプトが必要とされるのは以下のような場合でしょう: 現在実行
     中のプログラムが、一連のファイル群を処理するのに予想以上の時間を必要とし
     ていて、このプログラムが処理結果をファイル (zzz.rawdata)に出力したらすぐ
     に別のプログラムを起動してそのファイルを処理したほうがよい場合がありま
     す。上記のスクリプトでは、zzz.rawdata が生成されたかどうかを 5 分おきに確
     認し、生成が確認されたら 70 秒待って awk ジョブを実行する、という操作を繰
     り返します。


関連項目



ABELNET VPSサービス