概要
sleepは「眠らせる」という意味の通り、コマンドの実行を指定された時間停止させます。このコマンドは主にシェルスクリプトで、自動化されたタスクの実行間隔を調整したり、特定のファイルが生成されるまで待機したりするなど、時間に関連する制御を行う際に使用されます。秒(s)、分(m)、時(h)、日(d)の単位をサポートしており、様々な時間単位で待機時間を設定できます。
主な特徴
sleepコマンドの主な特徴は以下の通りです。
- 指定された時間(秒、分、時、日)待機します。
- スクリプトでタスク間の時間間隔を調整するのに使用されます。
- 小数点以下の時間をサポートしており、より詳細な時間制御が可能です。
- 待機中、CPUリソースをほとんど消費しません。
主要オプション
sleepコマンドは待機時間を引数として受け取りますが、単位を指定するためのオプションはありません。代わりに、引数に単位を併記します。
1) 実行オプション
2) ヘルプ
生成されたコマンド:
コマンドを組み合わせてみてください。
説明:
`sleep` コマンドを実行します。
これらのオプションを組み合わせて、AIと一緒に仮想的にコマンドを実行してみてください。
使用例
sleepコマンドの様々な使用例を通して機能を習得してください。
3秒間待機
sleep 3
コマンド実行後、3秒間待機します。単位がない場合、秒とみなされます。
1分30秒間待機
sleep 1m 30s
複数の時間をスペースで区切って加算できます。`1m`は60秒、`30s`は30秒なので、合計90秒間待機します。
小数点以下の時間の使用
sleep 0.5
小数点以下の時間を使用して0.5秒間待機します。
スクリプトでの使用
while true; do ping -c 1 google.com; sleep 5; done
スクリプト内で`while`文とともに使用すると、5秒ごとに`ping`コマンドを実行するタスクを作成できます。
バックグラウンドでの実行
sleep 1h &
`&`記号を使用すると、sleepコマンドをバックグラウンドで実行し、ターミナルを占有しないようにできます。
インストール
sleepは`coreutils`パッケージの一部であり、ほとんどのLinuxディストリビューションにデフォルトで含まれています。別途インストールする必要はありません。
ヒントと注意事項
sleepコマンド使用時の注意点をまとめました。
ヒント
- sleepは待機中にCPUリソースをほとんど消費しないため、長時間の待機タスクに適しています。
- `sleep 1h 30m`のように複数の時間を引数として与えることができます。この場合、すべての時間が加算され、合計待機時間となります。
- 時間単位(`s`、`m`、`h`、`d`)は大文字と小文字を区別しません。`5S`も`5s`も同じく5秒を意味します。