回答:
のtime
代わりに試してくださいtimethis
。
多くの場合、シェルの組み込みバージョンの時間とバイナリバージョンがあり、異なる形式で結果が得られることに注意してください。
$ time wget -q -O /dev/null https://unix.stackexchange.com/
real 0m0.178s
user 0m0.003s
sys 0m0.005s
対
$ \time wget -q -O /dev/null https://unix.stackexchange.com/
0.00user 0.00system 0:00.17elapsed 4%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+613minor)pagefaults 0swaps
「timethis」プログラムとは異なり、3つの値が返されます。これは、コマンドラインで「時間」を使用する場合の「システム時間」とは異なりますが、要するに、実際は「ウォールクロック時間」を意味し、ユーザーとsysはCPUクロック時間を表示し、通常のコードとシステムコールに分割します。
time
シェル組み込みの代わりに実行可能ファイルを使用することにより、出力形式と値を指定できます。例えば、コマンド名とパラメーターとともに実際の経過時間を取得します
/usr/bin/time --format='%C took %e seconds' sleep 3
sleep 3 took 3.00 seconds
のパスを指定する必要があることに注意してください。指定しない場合time
、デフォルトでシェル組み込みが使用されます。
/usr/bin
PATHにある場合の違いは何ですか?
time
ユーティリティが使用されることです。
command time
または\time
を使用して、ビルドインの代わりにユーティリティを実行することもできます。