【30.sleepコマンド】ざっくりわかる「シェルスクリプト」

sleepコマンド

sleepコマンド:
コマンドの実行を特定の期間一時停止する場合は、sleepコマンドを使用できます。遅延量は、 秒(s)、分(m)、時間(h)、および日(d)で設定できます。‘sleep_example.sh’ という名前のファイルを作成し、次のスクリプトを追加します。このスクリプトは、実行後5秒間待機します。

#!/bin/bash

echo “Wait for 5 seconds”
sleep 5
echo “Completed”

bashコマンドでファイルを実行します。

$ bash sleep_example.sh
“Wait for 5 seconds”
“Completed”
$

わかりにくいですね。
少し高度だけど、わかりやすいサンプルも書いておきます。

wait コマンドのサンプル

sleep コマンドをバックグラウンドで実行させ、前の章で使ったwait コマンドで同期をとります。。バックグランドで実行したコマンドのプロセス ID は $! で取得できます。

#!/bin/bash

for((i=0;i<3;i++));do
  sleep 5 &;
  array[i]=$!;
  echo "Sleeping: ${i} : ${array[i]}";
done

wait ${array[@]};
echo "Finish!!";
ヒント
二つのコマンドの違いは以下の通りです。
sleepは指定した時間だけ処理を遅延
waitはプロセスやジョブの終了を待つ

書籍の紹介

【29.waitコマンド】ざっくりわかる「シェルスクリプト」

【29.waitコマンド】ざっくりわかる「シェルスクリプト」

e-Statで新着一覧を取得しよう

e-Statで新着一覧を取得しよう