`times` 输出什么样的时间?

Tim*_*Tim 4 bash

来自Bash 参考手册times(强调我的):

打印出所使用的用户和系统时间的外壳它的孩子

来自help times

打印shell及其所有子进程的累积用户和系统时间。

什么是“shell 及其子进程使用的时间”?

例如,在一个已经运行了几个月的 bash shell 中:

$ times
0m0.152s 0m0.080s
0m15.804s 0m13.296s
Run Code Online (Sandbox Code Playgroud)

怎么可能shell及其子节点使用的各种时间都小于1分钟?

cas*_*cas 5

从帮助时间:

打印shell 及其所有子进程的累积用户和系统时间

你在强调for the shell and all of its child processes什么时候应该更加关注user and system times.

用户时间和系统时间不是真实(或时钟)时间,它们分别是用户代码和系统函数调用中使用的 CPU 时间。

顺便说一句,time内置(和同名的外部实用程序)可以显示所有三个时间 - 实时、用户时间和系统时间。来自help time

执行 PIPELINE 并在 PIPELINE 终止时打印执行 PIPELINE 所花费的实时时间、用户 CPU 时间和系统 CPU 时间的摘要。

顺便说一句。bash 内置time输出格式是可配置的。我喜欢使用以下内容,以便它只使用我终端的一行而不是浪费 3 行:

export TIMEFORMAT=$'\nreal %3lR\tuser %3lU\tsys %3lS'
Run Code Online (Sandbox Code Playgroud)

GNU 版本的外部time实用程序 ( /usr/bin/time) 允许您使用-f--format选项配置输出格式。其他版本可能有也可能没有类似的选项......不知道,不要太在意查找。