当我用来time
测量命令执行期间经过的时间而没有给出选项时,如下所示:
time sleep 3
它表现正确,打印:
real 0m3,002s
user 0m0,002s
sys 0m0,000s
但是提供任何选项,例如 -f 或 -o (除 -p 之外的任何选项),它都会打印奇怪的错误消息。
在示例中:
time -f "%e[s]" sleep 3
印刷
-f: command not found
(在 Ubuntu 18.04.2 上使用 bash)
我错过了一些明显的事情吗?
答案1
有一些特别之处time
:它作为内置 shell 和二进制文件存在:
type time
返回:time is a shell keyword
type /usr/bin/time
返回:/usr/bin/time is /usr/bin/time
然后 :
time -f "%e[s]" sleep 3
bash: -f: command not found
real 0m0.003s
user 0m0.003s
sys 0m0.000s
然而 :
/usr/bin/time -f "%e[s]" sleep 3
3.00[s]