Linux中的time命令

时间:2020-02-23 14:40:35  来源:igfitidea点击:

Linux中的time命令输出命令运行需要多长时间。
它与其他命令一起使用以分析执行时间。

使用time命令可以方便地测量脚本的性能。
花费的时间是衡量性能的重要指标。

使用time命令

在Linux中使用time命令就像在要执行的命令之前编写" time"一样简单。
我们来看看显示ls命令的输出需要多长时间:

$time ls

我们得到的输出包含三种不同类型的时间。
我们待会儿见。

让我们尝试另一个命令:

$time ping linuxfordevices.com

time命令的输出位于我们运行它的命令的输出之后。

最后三种时间是真实时间,用户时间和系统时间。

  • 真实:这是从发出呼叫到完成呼叫所花费的时间。
    这是实时测量所经过的时间。

  • 用户:这是在用户模式下花费的CPU时间。

  • Sys:这是在内核模式下花费的CPU时间。
    Sys是系统时间的缩写。

Linux中的time命令版本

有不同版本的time命令。
有3个特别的:

  • Bash
  • Zsh
  • GNU time (sh)

您可以看到正在使用哪一个:

$type time

根据您使用的版本,您将获得以下输出:

bash

time is a shell keyword

ZSH

time is a reserved word

GNU time

time is /usr/bin/time

Bash和Zsh具有自己的time命令的内置版本,如果已安装,它们将优先于GNU time命令。
要使用GNU中的时间,我们必须明确提及它。
接下来我们会看到。

1. GNU时间命令(默认)

要从GNU访问time命令,请使用:

$/usr/bin/time

来自GNU的Time命令给出了更详细的输出。

$/usr/bin/time ls

GNU时间命令的优点之一是操作起来很容易。
要以详细方式显示输出,请在时间命令中使用选项-v。

$/usr/bin/time -v ls

GNU time命令使您可以格式化输出并将其存储在文件中。
接下来我们会看到。

2.将输出存储到文件

要将输出保存到文件,请在GNU time命令中使用-o选项。
为此的命令是:

$/usr/bin/time -o time_output.txt ls

该命令将创建一个名称为time_output.txt的文件,然后将输出存储其中。

要将输出附加到现有文件的末尾,请使用以下命令:

$/usr/bin/time -a /home/smart/time-output.txt ls

3. GNU时间输出的格式

GNU time命令可用的另一个变体是可以格式化并以更友好的方式表示。
要格式化输出-f标志,请与time命令一起使用。

GNU time命令提供了可以在命令中使用的大量资源说明符。

要获取资源说明符列表,请使用以下命令:

$man /usr/bin/time

使用此方法的方法是:

$/usr/bin/time -f "\t%C [Command name],\t%K [Total memory usage],\t%E [Time Elapsed]"  ping theitroad.local

\ t在输出之间添加一个制表符。