Linux上で開発をしているときに「コマンド実行時間が前より長くなってないか?」と思うことがあったので、常日頃からコマンド実行時間を認知できるように表示を残すようにしてみました。
概要
- よく実施するコマンドを
bashスクリプト
経由で実行するようにスクリプト化 - 対象コマンド開始前に開始時刻をターミナル上に出力
- 対象コマンド終了後に終了時刻をターミナル上に出力
- 終了時刻と開始時刻の差分を計算
開始時刻
と処理時間
をログファイルに出力
スクリプトの中身
- サンプルとして
time.sh
というファイル名でスクリプトを作成します
#!/bin/bash ### StartTime echo echo StartTime `date` # ターミナル表示 startTime=`date +%s` # 計算用(%s:日時表示のフォーマット/UNIX時刻 (1970年1月1日0時UTCからのうるう秒を考慮しない秒数)) startTimeFile=`date "+%Y/%m/%d %H:%M:%S"` # ファイル出力用 echo ### 時間計測したい処理 sleep 3 ### EndTime echo echo EndTime `date` # ターミナル表示 endTime=`date +%s` # 計算用(%s:日時表示のフォーマット/UNIX時刻 (1970年1月1日0時UTCからのうるう秒を考慮しない秒数)) echo ### 差分 time=$((endTime - startTime)) # 処理時間 echo $time s # ターミナル表示 ### 結果をファイルに出力する echo "$startTimeFile,$time" >> CommandExecutionTimeLog.csv
スクリプト(コマンド)実行方法
bash time.sh