bashの特殊変数「SECONDS」で処理の実行時間を計測する

 

シェルを書いていると、たまに処理の実行時間がどれくらいかかっているかを把握したいときがあります。

そんなときに便利なのがSECONDS変数です

特殊変数:SECONDS

SECONDSという変数は、シェルが起動されてからの秒数が格納されている変数です。

# echo $SECONDS
313

上の例の場合はコマンドラインから実行した例ですが、シェルが起動してから313秒経過していることがわかります。

処理時間の計測方法

この変数を利用してシェル内の処理の実行時間を出力してみます。

#!/bin/sh

# SECONDS変数初期化
SECONDS=0

# 時間を計測したい処理を記載
sleep 10

# 処理時間出力
echo $SECONDS

これを実行すると次のようになります。

# ./test.sh
10

まとめ

SECONDS変数を使うと、dateコマンドよりも簡単に処理時間の把握が可能です。

SECONDSと同様に特殊変数にはRANDOMなどもあるので、活用してみてはいかがでしょうか。

  • このエントリーをはてなブックマークに追加
  • Pocket

この記事へのコメントはこちら

メールアドレスは公開されませんのでご安心ください。
また、* が付いている欄は必須項目となりますので、必ずご記入をお願いします。

内容に問題なければ、下記の「コメント送信」ボタンを押してください。