Linux コマンド (コンパイラ) が 1 日中に実行された合計時間をログに記録します。

Linux コマンド (コンパイラ) が 1 日中に実行された合計時間をログに記録します。

平均的な勤務日にマシンが scala のコンパイルにどれくらいの時間を費やすのか興味があります。sbt などの他のツールによって実行される場合でも、scalac コマンドが実行されるたびにその合計実行時間を記録する方法はありますか?

私は、/usr/bin/scalac の名前を /usr/bin/scalac_raw に変更し、scalac_raw を実行し (すべてのコマンドライン パラメータを渡す)、その実行時間をどこかに記録する bash スクリプトである新しい /usr/bin/scalac を作成することを考えていました。

それは合理的なアプローチでしょうか? もしそうなら、そのようなスクリプトをどのように記述すればよいでしょうか? そうでない場合、他に何かアイデアはありますか?

答え1

基本的にタイムスタンプだけが必要な場合は、次のモデルを使用できます。

scalac スクリプト:

#!/bin/sh

date >> ~/scalac.log
scalac-raw $@
date >> ~/scalac.log

答え2

time プログラムを使用します。例: time コマンド

ただし、このプログラムが存在しない場合は、コマンドをシェル スクリプトでラップすると便利です。ただし、この特定のコンテキストでは、これは合理的なアプローチではありません。

関連情報