特定のシェルスクリプトを実行するのにどれくらいの時間がかかったのか疑問に思ったことはありませんか?スクリプトの実行にかかる時間を出力する特定のシェルスクリプトにすでに遭遇している可能性があります。
この情報は、スクリプトの完了に時間がかかる場合は特に、分析に役立ちます。
syadminとして、スクリプトを作成すると、エンドユーザー向けの追加情報として実行時間を最終的に表示できます。これは、シェルスクリプトをよりインタラクティブで冗長にすることができるいくつかの方法の1つです。
Bashシェルと他のいくつかのシェルは、この目的のためにSECONDSと呼ばれる組み込み変数を提供します。この変数は、シェルが開かれてからの秒数を保持し、スクリプトの場合は、スクリプトが実行されてからの秒数になります。
Linuxでechoコマンドを使用して、このSECONDS変数の値を表示できます。
非常に簡単なサンプルスクリプトを紹介します:
#!/bin/bash
sleep 5
sleep 7
echo "This script took $SECONDS seconds to execute"
上記のスクリプトでbashsleepコマンドを使用していますが、これは指定された時間だけ待機します。
上記のスクリプトの出力はどうあるべきだと思いますか?
This script took 12 seconds to execute
スクリプトの実行時間を表示するのがいかに簡単だったかをご覧ください。
timeコマンドを使用して、スクリプトの実行時間を取得することもできます。
time ./script.sh
上記の出力は、前に見たものとは少し異なります。ここに実行時間が詳細に表示されます。実行時間は12秒ではなく12.010秒であることがわかります。
real 0m12.010s
user 0m0.004s
sys 0m0.006s
bashシェルスクリプトの実行時間を表示するためのこの簡単なLinuxのヒントが気に入っていただけたでしょうか。スクリプトで使用しますか?それを使用するために考えているシナリオは何ですか?