Linux time命令

Linux 的 time 命令是用来计算一个命令的执行时间的。它会返回命令的执行时间以及用户CPU时间、系统CPU时间、子进程CPU时间等统计信息。下面是time命令的用法和实例:

time命令用法

time [options] command [argument...]

time命令选项

  • -f FORMAT, --format=FORMAT:自定义输出格式,可用的占位符见下文
  • -o FILE, --output=FILE:将结果写入文件,而不是输出到终端
  • -p:使用POSIX标准格式输出结果
  • -v:使用verbose模式输出结果

time命令占位符

  • %E:命令的执行时长(例:"0:00.01")
  • %U:用户CPU时间(例:"0.00s")
  • %S:系统CPU时间(例:"0.00s")
  • %P:命令的CPU利用率(例:"1%")
  • %M:最大内存使用情况(单位:KB)
  • %W:退出状态草丛(类似于命令返回值)

time命令实例

实例1:计算命令执行时间

我们经常需要知道一些命令的执行时间以及资源占用情况。通过time命令,我们可以轻松地获取到这些信息。

time ping -c 5 www.baidu.com

输出结果如下:

PING www.baidu.com (220.181.38.148) 56(84) bytes of data.
64 bytes from 220.181.38.148: icmp_seq=1 ttl=51 time=11.7 ms
64 bytes from 220.181.38.148: icmp_seq=2 ttl=51 time=10.0 ms
64 bytes from 220.181.38.148: icmp_seq=3 ttl=51 time=10.1 ms
64 bytes from 220.181.38.148: icmp_seq=4 ttl=51 time=10.0 ms
64 bytes from 220.181.38.148: icmp_seq=5 ttl=51 time=10.2 ms

--- www.baidu.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4009ms
rtt min/avg/max/mdev = 10.026/10.422/11.718/0.707 ms

real    0m4.131s
user    0m0.000s
sys 0m0.000s

输出结果中的real、user和sys各表示命令执行的总时间、用户CPU时间和系统CPU时间。在这个示例中,我们得到的结果是“real 0m4.131s”,它表示ping 命令执行了4.131秒。我们也可以利用-f选项自定义输出格式,比如:

time -f "real %e seconds. user %U seconds. sys %S seconds." ping -c 5 www.baidu.com

输出结果如下:

PING www.baidu.com (220.181.38.148) 56(84) bytes of data.
64 bytes from 220.181.38.148: icmp_seq=1 ttl=51 time=10.9 ms
64 bytes from 220.181.38.148: icmp_seq=2 ttl=51 time=10.0 ms
64 bytes from 220.181.38.148: icmp_seq=3 ttl=51 time=10.1 ms
64 bytes from 220.181.38.148: icmp_seq=4 ttl=51 time=10.0 ms
64 bytes from 220.181.38.148: icmp_seq=5 ttl=51 time=10.1 ms

--- www.baidu.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4004ms
rtt min/avg/max/mdev = 10.007/10.244/10.895/0.346 ms
real 4.014 seconds. user 0.001 seconds. sys 0.003 seconds.

在这个示例中,我们定义了一个输出格式,它包含了命令执行时间、用户CPU时间和系统CPU时间的信息。

实例2:比较两个命令的执行时间

我们经常需要比较两个命令的执行时间,用time命令可以轻松地实现这个需求。比如,我们希望知道一个简单的命令逆袭执行的时间和系统复制命令执行的时间哪个更短,可以这样做:

time seq 1000 | sort > /dev/null

输出结果如下:

real    0m0.003s
user    0m0.000s
sys 0m0.004s

其中real、user和sys各表示命令执行的总时间、用户CPU时间和系统CPU时间。这个命令使用了管道符,将seq命令的输出传递给sort命令,并将sort命令的输出传递给/dev/null,从而去除所有的输出。我们也可以使用-f选项自定义输出格式,比如:

time -f "real %e seconds. user %U seconds. sys %S seconds." cp -r /usr/lib /tmp

输出结果如下:

real 3.601 seconds. user 0.418 seconds. sys 2.692 seconds.

在这个示例中,我们使用cp命令将/usr/lib目录复制到了/tmp目录,并利用-f选项自定义了输出格式,得到了命令执行时间、用户CPU时间和系统CPU时间的信息。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Linux time命令 - Python技术站

(0)
上一篇 2023年3月28日
下一篇 2023年3月28日

相关文章

  • Centos Linux7设置静态IP的实例

    我们来讲解一下“CentOS Linux7设置静态IP的实例”的完整攻略。 1.前置条件 在进行静态IP的设置之前,我们需要先保证以下几点: CentOS7已经安装完成; 能够正常联网并且能够访问互联网; 能够登录到CentOS7系统的终端或者命令行界面。 2.备份原有配置文件 在进行静态IP的设置之前,我们需要先将原有的网络配置文件进行备份。通过备份可以避…

    Linux 2023年5月24日
    00
  • Linux open命令

    Linux open命令的作用与使用方法 open命令是Linux和macOS系统中的一个命令行工具,它用于打开指定文件、目录或URL地址。open命令不仅可以快速打开文件,还可以调用系统默认的程序来打开文件,便于用户快速访问文件。下面我将详细介绍open命令的使用方法。 语法 open [-a 应用程序] [-b 包标识符] [-f] [-n] [-g] …

    Linux 2023年3月28日
    00
  • Linux下串口编程入门

    1. 串口简介 串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用.常用的串口是 RS-232-C 接口(又称 EIA RS-232-C)它是在 1970 年由美国电子工业协会(EIA)联合贝尔系统、 调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准.它的全名是”数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据…

    Linux 2023年4月11日
    00
  • Centos7使用yum安装MySQL及实现远程连接的方法

    以下是“Centos7使用yum安装MySQL及实现远程连接的方法”的完整攻略: 1. 安装MySQL CentOS 7 中默认安装了 MariaDB 数据库,如果想要安装 MySQL 需要先卸载 MariaDB。 # 卸载 MariaDB 数据库 sudo yum remove mariadb-libs # 清理残留文件和目录 sudo rm -rf /v…

    Linux 2023年5月14日
    00
  • Linux安装mysql并配置外网访问的实例

    下面是“Linux安装mysql并配置外网访问的实例”的完整攻略: 一、安装mysql 更新Ubuntu源及系统: sudo apt-get update sudo apt-get upgrade 安装MySQL服务端软件: sudo apt-get install mysql-server 安装MySQL客户端程序: sudo apt-get instal…

    Linux 2023年5月14日
    00
  • Linux 的各种 signal

    2) SIGINT 程序终止(interrupt)信号, 在用户键入INTR字符(通常是Ctrl-C)时发出,用于通知前台进程组终止进程。 3) SIGQUIT 和SIGINT类似, 但由QUIT字符(通常是Ctrl-\)来控制. 进程在因收到SIGQUIT退出时会产生core文件, 在这个意义上类似于一个程序错误信号。 4) SIGILL 执行了非法指令.…

    Linux 2023年4月16日
    00
  • Linux系统上安装Python3.7

          我用的Linux版本是CentOS系统   用screenfetch查看 下载源码包  进入官网https://www.python.org/      找到第一个Downloads下载 Source code是源码   这个地方下载源码包,下载完后上传到Linux的系统里 解压完后会有两个目录 进入Python-3.7.0a2安装Python …

    Linux 2023年4月13日
    00
  • CentOS 下yum安装mysql、jdk和tomcat的方法

    下面是“CentOS下yum安装mysql、jdk和tomcat的方法”的详细攻略。 安装MySQL 步骤1:检查系统是否已安装mysql 在终端中输入以下命令: rpm -qa | grep mysql 如果已经安装了MySQL,则会看到输出,否则不会有任何输出。 步骤2:添加MySQL镜像源 在终端输入以下命令: wget -i -c http://de…

    Linux 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部