首页 > 编程语言 > 详解Linux time 命令的使用
2020
10-09

详解Linux time 命令的使用

1.命令简介

time 用于统计命令执行所消耗的时间及相关系统资源等信息。time 可以显示的资源有四大项,分别是:

Time resources
Memory resources
IO resources
Command info

2.命令格式

time [options] command [arguments...]

3. 选项说明

-f FORMAT, --format=FORMAT:使用指定格式输出。如果没有指定输出格式,采用环境变量 TIME 指定的格式
-p, --portability:使用兼容输出格式,real %e user %U sys %S,这么做的目的是为了与 POSIX 规格相容
-o FILE, --output=FILE:设定结果输出文件。这个选项会将 time 的输出写入所指定的文件中。如果文件已经存在,覆写其内容
-a, --append:与 -o 选项一起使用,使用追加模式将输出写入指定文件
-v, --verbose:使用冗余模式尽可能的输出统计信息
--help:显示帮助信息
-V, --version:显示版本信息
-- :终止选项列表

其中输出格式以类似printf的方式解释,普通字符将直接输出,制表符、换行符、反斜杠百分号,分别使用\t、\n、\和%%表示。%后跟其它字母表示特殊格式,可用格式如下:

Time
%E:执行指令所花费的时间,格式[hours:]minutes:seconds
%e:执行指令所花费的时间,单位是秒
%S:指令执行时在内核模式(kernel mode)所花费的时间,单位是秒
%U:指令执行时在用户模式(user mode)所花费的时间,单位是秒
%P:执行指令时 CPU 的占用比例。其实这个数字就是内核模式加上用户模式的 CPU 时间除以总时间((%S+%U)/%E)

Memory
%M:执行时所占用的内存的最大值。单位KB
%t:执行时所占用的内存的平均值,单位是 KB
%K:执行程序所占用的内存总量(stack+data+text)的平均大小,单位是 KB
%D:执行程序的自有数据区(unshared data area)的平均大小,单位是 KB
%p:执行程序的自有栈(unshared stack)的平均大小,单位是 KB
%X:执行程序是共享代码段(shared text)的平均值,单位是 KB
%Z:系统内存页的大小,单位是 byte。对同一个系统来说这是个常数
%F:内存页错误次数。内存页错误指需要从磁盘读取数据到内存
%R:次要或可恢复的页面错误数。这些是无效页面的错误,但其他虚拟页面尚未使用该内存页。因此,页面中的数据仍然有效,但必须更新系统表
%W:进程从内存中交换的次数
%c:进程上下文被切换的次数(因为时间片已过期)
%w:进程等待次数,指程序主动进行上下文切换的次数,例如等待I/O操作完成

I/O
%I:此程序所输入的档案数
%O:此程序所输出的档案数
%r:此程序所收到的 Socket Message
%s:此程序所送出的 Socket Message
%k:此程序所收到的信号 ( Signal )数量

Command Info
%C:执行时的参数以及指令名称
%x:指令的结束代码 ( Exit Status )

4.常用示例

(1)统计指定命令执行时间。

time date 
Fri May 31 11:30:04 CST 2019

real	0m0.001s
user	0m0.000s
sys		0m0.000s

以上就是详解Linux time 命令的使用的详细内容,更多关于Linux time 命令的资料请关注自学编程网其它相关文章!

编程技巧