SLEEP(1) FreeBSD 一般コマンドマニュアル SLEEP(1)
名称
sleep − 一定の時間実行を停止する |
書式
sleep seconds |
解説 |
sleep コマンドは、少なくとも seconds で指定した秒数だけ実行を停止します。 sleep コマンドがシグナルを受信すると標準の動作を行います。 |
実装に関する注
この実装においては、 SIGALRM シグナルは特別には扱われません。 sleep コマンドは、非整数の数値で指定された秒数を受け付けて、これを尊重し ます。 (小数点として ‘.’ 文字を使用します)。 これはポータブルではない拡張 です。これを使用するシェルスクリプトは、他のシステムで正しく実行できない ことを、ほぼ保証できます。 |
使用例
(csh(1) で) あるコマンドの実行を 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 ジョブを実行する、という操作を繰 り返します。 |
診断
ユーティリティ sleep は、成功すると 0 で、エラーがあった場合は >0 で終了 します。 |
関連項目
規格
sleep コマンドは、おそらく IEEE Std 1003.2 (‘‘POSIX.2’’) 互換です。 |
歴史
sleep コマンドは Version 4 AT&T UNIX に登場しました。 FreeBSD 10.0 April 18, 1994 FreeBSD 10.0 |