time命令用于确定指定命令运行所需的时间。它对于测试脚本和命令的性能非常有用。

例如,如果您有两个不同的脚本执行相同的工作,并且您想知道哪个脚本执行得更好,更快,则可以使用Linux time命令来确定每个脚本所需的执行时间。

time命令版本

Bash和Zsh,使用最广泛的Linux shell都有自己的time命令内置版本,它优先于Gnu time命令。

您可以使用type命令确定time是可执行二进制还是内置关键字。

type time
# Bash
time is a shell keyword

# Zsh
time is a reserved word

# GNU time (sh)
time is /usr/bin/time

使用Gnu time命令,您需要指定time二进制文件的完整路径,通常/usr/bin/time或使用前导反斜杠\time,以防止使用内置命令。

Gnu time允许您格式化输出并提供其他有用的信息,如内存I/O和IPC调用。

使用Linux time命令

在下面的示例中,我们将使用wget工具测试下载Linux内核所需的时间:

time wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.9.tar.xz

输出打印的内容取决于您正在使用的time命令的版本:

# Bash
real	0m33.961s
user	0m0.340s
sys	0m0.940s

# Zsh
0.34s user 0.94s system 4% cpu 33.961 total

# GNU time (sh)
0.34user 0.94system 0:33.96elapsed 4%CPU (0avgtext+0avgdata 6060maxresident)k
0inputs+201456outputs (0major+315minor)pagefaults 0swaps
  • 实际总时间已用时间(挂钟时间)是从会话开始到结束的时间。这是从您Enter按键的那一刻到wget命令完成的那一刻的时间。
  • user - 在用户模式下花费的CPU时间量。
  • systemsys - 在内核模式下花费的CPU时间。

到目前为止,您应该很好地理解如何使用time命令。如果您想了解有关Gnu time命令的更多信息,请访问time手册页。如果你喜欢我们的内容可以选择在下方二维码中捐赠我们,或者点击广告予以支持,感谢你的支持

如果你喜欢我们的内容可以选择在下方二维码中捐赠我们,或者点击广告予以支持,感谢你的支持