当我在shell time ./myapp
中运行time命令时,我得到如下输出:
真实0m0.668s
用户0m0.112s
sys 0m0.028s
然而,当我运行命令\time -f %e ./myapp
时,我失去了精确度,我得到了:
2.01s
为什么输出不是3位数的精度?如果我使用%E命令,我也会以同样的方式失去精度。如何更改它以再次获得更高的精度,但仍然只输出秒数?
我的研究基于 Linux / Unix Command: time
答案 0 :(得分:1)
您可以尝试使用/usr/bin/time -p
。 -p
选项应以标准格式显示输出。这是我MacBook的一个例子:
gondolin% /usr/bin/time find . -name '*.pyc' > /dev/null
0.10 real 0.04 user 0.05 sys
gondolin% /usr/bin/time -p find . -name '*.pyc' > /dev/null
real 0.10
user 0.04
sys 0.05
根据die.net,time
实用程序应该允许您在TIME
环境变量中指定格式。 bash builtin做了类似的事情,但改为使用TIMEFORMAT
环境变量:
bash-3.2$ time find . -name '*.pyc' > /dev/null
real 0m0.155s
user 0m0.051s
sys 0m0.068s
bash-3.2$ export TIMEFORMAT='real %R
user %U
sys %S'
bash-3.2$ time find . -name '*.pyc' > /dev/null
real 0.107
user 0.049
sys 0.058
bash-3.2$
答案 1 :(得分:0)
在其他论坛上询问后,其中一个人给了我正在寻找的答案。它可以在here中找到。