Bashのsleepコマンド徹底解説 – シェルスクリプトをN秒間待機させる方法(実行例付き)
シェルスクリプトを書いていると、処理を進める前に一定時間待機させたい場面に出くわすことがあります。たとえば、あるプロセスの完了を待ちたい場合や、失敗したコマンドを再試行する前に間隔を空けたい場合などがその代表例です。
そんなときに役立つのが、シンプルで扱いやすい sleep コマンドです。
Bashのsleepコマンドの基本的な使い方
sleep コマンドは非常に汎用性が高く、構文もとてもシンプルです。使い方は sleep N と入力するだけ。これだけでスクリプトは N 秒間一時停止します。N には正の整数または小数(浮動小数点数)を指定できます。
まずは基本的な例を見てみましょう。
echo "Hello there!"
sleep 2
echo "Oops! I fell asleep for a couple seconds!"このスクリプトを実行すると、次のように「Hello there!」と表示された後、2秒間の待機が発生してから次のメッセージが表示されます。

同様に、小数を使えば1秒未満の細かい待機も可能です。たとえば sleep .8 とすれば、0.8秒間スクリプトが停止します。
以上が sleep コマンドの基本的な使い方です。
sleepコマンド使用時の注意点
sleep のデフォルトの時間単位は 秒 です。そのため、これまでの例では単位を明示的に指定する必要がありませんでした。
ただし、一部の環境(BSD系システムやmacOS)では、秒のみがサポートされている点に注意が必要です。それ以外のUnix系OSでは、一般的に以下の時間単位が利用できます。
s:秒m:分h:時間d:日
また、sleep コマンドには複数の引数を渡すことも可能です。2つ以上の数値を指定した場合、システムはそれらの合計時間だけ待機します。
たとえば sleep 2m 30s とすれば、2分30秒(2.5分)間の待機が発生します。なお、macOSやBSDマシンで同じ結果を得るには、「2分30秒=150秒」であるため、sleep 150 と実行してください。
まとめ
sleep コマンドは、Bashスクリプトに一時停止を組み込むための便利なツールです。他のコマンドと組み合わせれば、タイマーアラームの作成、処理の順序制御、Webサイトへの接続リトライ間隔の調整など、さまざまな用途に活用できます。このシンプルながら強力なツールを、ぜひあなたのBashツールボックスに加えてみてください。
-
Windows 10にBash(Linuxシェル)をインストールして使う方法【WSL完全ガイド】
Windows上でLinuxシェルをセットアップして使う方法を、Windows Subsystem for Linux(WSL)を使って解説します。 このチュートリアルは、2020年以降にリリースされた最新版のWindows 10を対象としています。古いバージョンのWindows 10でのWSLの使い方や、Windows 8/7/XP向けの別の方法については扱いません。サポートが終了したソフトウェアの使用は避けるべきだからです。どうしてもWindowsを使わなければならない場合は、必ずセキュリティ更新プログラムが提供されているバージョンを使用してください。 WSLは非常に優れたツールで、まるで
-
Windows 10にLinux Bashシェルをインストールする方法【WSL設定ガイド】
Bashシェルとは?Windows 10でLinuxが動く仕組み Bashシェルは、長年にわたりLinuxに搭載されてきたコマンドラインユーティリティです。そして現在、MicrosoftはこのBashシェルをWindows 10に直接組み込みました。これは仮想マシンでも、コンテナでも、Windows向けにコンパイルされたソフトウェアでもありません。実態は、Linuxソフトウェアを実行するための「Windows Subsystem for Linux(WSL)」というサブシステムであり、AndroidアプリをWindows上で動かすために開発されていた(後に中止された)Project Asto