Shell Scriptの実行時間を計る方法
概要
- Shell Script実行時に処理時間を計測したい場合の方法について記載します
環境
- OracleLinux 9.1
時間の計測が可能なコマンド
timeコマンド
- コマンドの実行時間を計測するためのコマンドです
time コマンド
計測する時間は下記の3種類となります。
- real コマンドの実行時間
- user ユーザCPU時間
- sys システムCPU時間
実際に
timeコマンドを利用してsleepコマンドを実行した結果
$ time sleep 3 real 0m3.002s user 0m0.001s sys 0m0.000s
dateコマンド
- 指定したフォーマットに応じた時間を表示するためのコマンドです
date オプション コマンド
- 実際に
dateコマンドを実行した結果
$ date "+%Y-%m-%d" 2024-07-18
Shell Scriptの実行時間を実際に計ってみる
- Shell Script全体の実行時間を計る場合は
dateコマンド - コマンド単体の実行時間を計る場合は
timeコマンドを利用
#!/bin/bash # 処理開始時間を取得 start_time=`date "+%S"` # 1個目の処理 echo 1個目の処理開始 time sleep 1 echo 1個目の処理終了 # 2個目の処理 echo 2個目の処理開始 time sleep 2 echo 2個目の処理終了 # 3個目の処理 echo 3個目の処理開始 time sleep 3 echo 3個目の処理終了 # 処理終了時間を取得 end_time=`date "+%S"` # スクリプトの実行時間を表示 total_time=$((end_time - start_time)) echo "実行時間: $total_time秒"