时间不接受争论

时间不接受争论

我安装了时间,但是当我使用它时,我得到的是便携式格式,而不是默认格式。安装时我认为它说的是 GNU time 1.7 或 1.72。

命令如

time --help
time --version

失败并出现错误“找不到命令”。 TIME 环境变量未设置。为什么时间会这样?

答案1

虽然 Jesse_b 关于 shell 通常如何查找命令的说法是正确的,但还有一个更简单的修复方法。

\time --version

Bash、ksh、zsh 和我相信其他一些常见的 shell 会将没有路径的命令上的前导反斜杠视为“跳过查看此内容的 PATH”。

另外,知道内置时间是多少,我们还可以通过运行来解决这个问题

time time --version

毕竟,命令未找到错误而不是 no such option 错误的原因是因为 shell 内置命令仅运行后面的命令并检查完成时运行的时间...这与 / 是一样的bin/time 确实如此。

如果您预计有时间进行争论...您想知道现在几点了吗?因为那是date命令。

答案2

使用:

\command builtin type time

查看time您正在运行的版本。

这是偏执版本 - 通常就type time足够了,但上面的方法可以避免alias type=echo.

要查看time您的 中的所有二进制版本$PATH,请使用which -a time.

答案3

当查找命令时,shell 使用以下首选项:

  1. 别名
  2. 分配给变量之前的参数扩展、命令替换、算术扩展和引号删除
  3. 功能
  4. 内置命令
  5. 哈希表
  6. 搜索PATH

time因此,将优先使用该关键字,而time不是可能在您的PATH.您可以使用别名来克服这个问题,例如:

alias time=/usr/bin/time

(确保路径特定于您安装时的任何位置)

相关内容