sleepコマンドでシェルスクリプトの処理を一定時間停止する方法
目次
スポンサードリンク
sleep コマンドの使い方
シェルスクリプトの処理を一時停止し遅延させる際は sleep コマンドを使用します。
sleepコマンドの基本的な構文は以下の通りです。秒数には待機する時間を指定ます。
sleep 秒数 [単位]
単位には以下を指定することができます。なお、小数秒の指定は、bash 4.0以降でのみ可能です。
- s: 秒 (デフォルト)
- m: 分
- h: 時間
- d: 日
サンプルコード
下記サンプルコードは、処理を3.5秒停止し、その前後の現在時刻を出力しています。
#!/bin/bash
# 現在時刻を出力 年月日時分秒 + ミリ秒
echo `date +%Y/%m/%d-%H:%M:%S:%3N`
# 3.5秒間処理を一時停止
sleep 3.5s
# 再度現在時刻を出力
echo `date +%Y/%m/%d-%H:%M:%S:%3N`
exit 0
実行結果は以下の通りでした。想定通り、3.5秒処理が停止したことを確認できました。
# ./sleep.sh
2024/07/12-21:05:26:010
2024/07/12-21:05:29:513
シェルスクリプトの知識は、プログラマにとって長く役立つ知識です。 私はこちらの書籍で一通り知識を抑えました。基本から丁寧に解説されています。
リンク
最短3時間で覚えるLinuxシェルスクリプト
こちらは、シェルスクリプトの基本的な書き方、デバッグ方法、if, case, while, forなど基本的な制御構文について書かれています。30日間の無料体験もできる『Kindle Unlimited』でも読むことができます。
リンク
Linuxコマンドについて徹底的に学べるUdemy講座
もう絶対に忘れない Linux コマンド【Linux 100本ノック+名前の由来+丁寧な解説で、長期記憶に焼き付けろ!】
Search
Recent Posts
- カーネル更新やパッケージのパッチ適用後、OSの再起動が必要か確認するLinuxコマンド(needs-restarting)
- OpenSSHのエラー「bad ownership or modes for chroot directory component」の原因と解消方法
- Apacheの起動状態をチェックして停止してる場合にApacheを起動するシェルスクリプト
- Amazon LinuxのOSバージョンを調べる方法|/etc/redhat-release の代替ファイル
- MYSQLでダンプファイルを取得する際に発生したエラー「Couldn't execute 'SELECT BINLOG_GTID_POS('', '0')': You are not using binary logging (1381)」の原因と対処方法