time -f "%e[s]" sleep 3 打印 -f: 命令未找到

time -f "%e[s]" sleep 3 打印 -f: 命令未找到

当我用来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]

相关内容