[fakename]$ help time
time: time [-p] pipeline
Report time consumed by pipeline's execution...
Run Code Online (Sandbox Code Playgroud)
由此看来,它似乎time是一个 Bash 内置函数。但是,我在此页面上找不到它的描述:https : //www.gnu.org/software/bash/manual/html_node/Shell-Builtin-Commands.html#Shell-Builtin-Commands。为什么会这样?
Nic*_*ckD 22
它在bash 联机帮助页的“Shell Grammar/Pipelines”小节中进行了描述。您在Pipelines部分提供的链接中也有描述,在“Reserved Words”下对其进行了索引。
管道
管道是由一个控制运算符分隔的一个或多个命令的序列 | 或|&。管道的格式是:
Run Code Online (Sandbox Code Playgroud)[time [-p]] [ ! ] command [ | or |& command2 ... ]command 的标准输出通过管道连接到 command2 的标准输入。此连接在命令指定的任何重定向之前执行(请参阅下面的 REDIRECTION)。如果使用|&,command的标准错误通过管道连接到command2的标准输入;它是 2>&1 | 的简写。标准错误的这种隐式重定向在命令指定的任何重定向之后执行。
管道的返回状态是最后一个命令的退出状态,除非启用了 pipefail 选项。如果启用了 pipefail,管道的返回状态是最后一个(最右边)命令的值,以非零状态退出,如果所有命令都成功退出,则为零。如果保留字!在管道之前,该管道的退出状态是上述退出状态的逻辑否定。shell 在返回值之前等待管道中的所有命令终止。
如果时间保留字位于管道之前,则在管道终止时报告其执行所消耗的用户和系统时间。-p 选项将输出格式更改为 POSIX 指定的格式。TIMEFORMAT 变量可以设置为一个格式字符串,指定如何显示时间信息;请参阅下面的 Shell 变量下的 TIMEFORMAT 说明。
管道中的每个命令都作为单独的进程(即,在子外壳中)执行。
小智 5
Bash 参考手册可以在控制台上使用info. 然后,用户可以按 键在索引中搜索关键字i,键入关键字并按 键Enter。info将跳转到手册中与关键字关联的第一个位置。按,可到达其他位置。有关更多信息,请在线阅读 GNU 信息手册,或在控制台上使用info info. 事实上,在手册中快速找到关键字最重要的是使用现有索引。
关于这个问题的基本事实是,time 它不是内置的,而是 Bash保留字或关键字。