私は、Cプログラムを実行し、Unixのtimeコマンドを使って実行時間を測定するスクリプトを作成しようとしていました。時間を計算するためのシェルスクリプト
cc /home/pop/Daa/abc.c
r = `time /home/pop/Daa/./a.out`
echo "recursion" $r >> log.txt
cc /home/pop/Daa/xyz.c
d = `time /home/pop/Daa/./a.out `
echo "dynamic" $d >> log.txt
に従いますが、スクリプトを実行した後にlog.txtファイルは言葉だけ再帰とダイナミックが含まれているよう
スクリプトが見えます。時間の値は見当たりません。しかし、コマンドライン端末でtimeコマンドを実行するには、この出力は、実行の唯一の「本当の」時間を含むようにフォーマットされ、ログファイルに書き込まれますすることができますどのように次のような出力
real 0m0.001s
user 0m0.000s
sys 0m0.000s
を与えましたか?
"-f:command not found" - Bashには組み込みの 'time'があるためです。リアルタイムのみを出力したい場合は、 'TIMEFORMAT'変数を使います。 'time -f'を使うには、' command time -f ... 'や'/usr/bin/time -f ... 'のように外部ユーティリティを使うように指定する必要があります。 –