《Linuxtime命令详解》由会员分享,可在线阅读,更多相关《Linuxtime命令详解(15页珍藏版)》请在金锄头文库上搜索。
1、Linux time 命令详解(一)用途说明time命令常用于测量一个命令的运行时间,注意不是用来显示和修改系统时间的(这是date命令干的事情)。但是今天我通过查看time命令的手册页,发现它能做的不仅仅是测量运行时间,还可以测量内存、I/O等的使用情况,手册页上的说法是time a simple command or give resource usage,其中time一词我认为它应该是测量或测定的意思,并不单指时间。一个程序在运行时使用的系统资源通常包括CPU、Memory和I/O等,其中CPU资源的统计包括实际使用时间(real time)、用户态使用时间(the process sp
2、ent in user mode)、内核态使用时间(the process spent in kernel mode)。但是简单的使用time命令并不能得到内存和I/O的统计数据,请看后文慢慢道来。常用参数time命令最常用的使用方式就是在其后面直接跟上命令和参数:time 在命令执行完成之后就会打印出CPU的使用情况:real 0m5.064s = 实际使用时间(real time)user 0m0.020s = 用户态使用时间(the process spent in user mode)sys 0m0.040s 1.txtreal 0m0.081suser 0m0.060ssys 0m0
3、.020srootweb186 root# time find . -name mysql.sh 22.txt./work186/sms/bin/mysql.sh./work186/sms/src/scripts/mysql.sh./work186/sms/src/scripts1/mysql.sh./work186/sms1/bin/mysql.sh./work186/sms1/src/scripts/mysql.sh./temp/sms/bin/mysql.sh./temp/sms/src/scripts/mysql.shreal 0m0.068suser 0m0.040ssys 0m0.030s通过上面的尝试,发现无法将time的输出信息重定向到文件里面,为什么?因为time是shell的关键字,shell做了特殊处理,它会把time命令后面的命令行作为一个整体来进行处理,在重定向时,实际上是针对后面的命令来的,time命令本身的输出并不会被重定向的