为什么`time`命令不能用于任何选项?

Modified on: Sat, 09 Jun 2018 20:50:23 +0800

我尝试使用time命令和-f选项格式化时间输出,但是我收到以下错误:

-f: command not found

然后我尝试使用其他选项-a-o等,我得到了同样的错误。甚至time --version都不起作用(--version: command not found)。

不要告诉我读这个男人,因为我已经多次这样做了...所有这些选项都在那里指定。那么,哪里可能是问题?

最佳答案

好吧,即使你不喜欢它,我也会让你再次阅读man time。在EXAMPLES部分的末尾,您会找到:

  Users of the bash shell need to use an explicit path in order to run
  the external time command and not the shell builtin variant.  On system
  where time is installed in /usr/bin, the first example would become
       /usr/bin/time wc /etc/hosts

所以,我假设你使用bash shell,它使用内部的shell内置版本的time。您可以使用以下命令检查:

type time

,输出可能是:

time is a shell keyword

如果是这种情况,那么很明显,要使用真正的 time命令,您必须使用其显式路径:/usr/bin/time

此外,如果您不想再使用内置time的shell,您可以创建一个永久别名如下:

alias time='/usr/bin/time'

这将覆盖shell builtin time,因为命令:

type time

现在将提供以下输出:

time is aliased to `/usr/bin/time'

相关问答

添加新评论