linux time-統計給定命令所花費的總時間


推薦:更多linux 性能監測與優化 關注:linux命令大全

time命令用於統計給定命令所花費的總時間。 

語法

time(參數)

參數

指令:指定需要運行的額指令及其參數。 

實例

當測試一個程序或比較不同算法時,執行時間是非常重要的,一個好的算法應該是用時最短的。所有類UNIX系統都包含time命令,使用這個命令可以統計時間消耗。例如: 

[root@localhost ~]# time ls
anaconda-ks.cfg  install.log install.log.syslog satools text real 0m0.009s user 0m0.002s sys 0m0.007s 

輸出的信息分別顯示了該命令所花費的real時間、user時間和sys時間。 

  • real時間是指掛鍾時間,也就是命令開始執行到結束的時間。這個短時間包括其他進程所占用的時間片,和進程被阻塞時所花費的時間。 
  • user時間是指進程花費在用戶模式中的CPU時間,這是唯一真正用於執行進程所花費的時間,其他進程和花費阻塞狀態中的時間沒有計算在內。 
  • sys時間是指花費在內核模式中的CPU時間,代表在內核中執系統調用所花費的時間,這也是真正由進程使用的CPU時間。 

shell內建也有一個time命令,當運行time時候是調用的系統內建命令,應為系統內建的功能有限,所以需要時間其他功能需要使用time命令可執行二進制文件/usr/bin/time。 

使用-o選項將執行時間寫入到文件中: 

/usr/bin/time -o outfile.txt ls

使用-a選項追加信息: 

/usr/bin/time -a -o outfile.txt ls

使用-f選項格式化時間輸出: 

/usr/bin/time -f "time: %U" ls

-f選項后的參數: 

參數  描述 
%E  real時間,顯示格式為[小時:]分鍾:秒 
%U  user時間。 
%S  sys時間。 
%C  進行計時的命令名稱和命令行參數。 
%D  進程非共享數據區域,以KB為單位。 
%x  命令退出狀態。 
%k  進程接收到的信號數量。 
%w 進程被交換出主存的次數。 
%Z  系統的頁面大小,這是一個系統常量,不用系統中常量值也不同。 
%P  進程所獲取的CPU時間百分百,這個值等於user+system時間除以總共的運行時間。 
%K  進程的平均總內存使用量(data+stack+text),單位是KB。 
%w  進程主動進行上下文切換的次數,例如等待I/O操作完成。 
%c  進程被迫進行上下文切換的次數(由於時間片到期)。 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM