time命令是較少見的Linux命令之一,但它可以用來顯示命令運行需要多長時間。
如果您是開發人員並且您想測試程序或腳本的性能,這非常有用。
本指南將列出您將在time命令中使用的主開關及其含義。
如何使用時間命令
時間命令的語法如下所示:
時間
例如,您可以運行ls命令以與time命令一起以長格式列出文件夾中的所有文件。
時間ls -l
時間命令的結果如下:
真正的0m0.177s
用戶0m0.156s
sys 0m0.020s
顯示的統計信息顯示運行命令所需的總時間,用戶模式下花費的時間量以及在內核模式下花費的時間量。
如果你有一個你已經編寫的程序,並且你想要處理性能問題,你可以反復運行它,並嘗試改進統計數據。
默認情況下,輸出顯示在程序的結尾處,但可能需要輸出到文件。
要將格式輸出到文件,請使用以下語法:
時間-o
時間 - 輸出=
時間命令的所有開關必須在希望運行的命令之前指定。
如果您是性能調優,那麼您可能希望反復將time命令的輸出附加到同一文件,以便查看趨勢。
為此,請改用以下語法:
時間-a
時間 - 花費
格式化時間命令的輸出
默認情況下,輸出如下所示:
真正的0m0.177s
用戶0m0.156s
sys 0m0.020s
有如下列表所示的大量格式化選項
- C - 使用的名稱和命令行參數
- D - 進程未共享數據區的平均大小,以千字節為單位
- E - 時鐘格式的經過時間
- F - 頁面錯誤的數量
- I - 進程的文件系統輸入的數量
- K - 進程的平均總內存使用量,以千字節為單位
- M - 生命期內的進程最大駐留集大小,以千字節為單位
- O - 進程的文件系統輸出的數量
- P - 作業收到的CPU的百分比
- R - 次要或可恢復頁面錯誤的數量
- S - 在內核模式下系統使用的CPU秒數總數
- U - 用戶模式使用的CPU秒數
- W - 進程從主內存換出的次數
- X - 進程中共享文本的平均數量
- Z - 系統的頁面大小(千字節)
- c - 進程進行上下文切換的次數
- e - 過程在幾秒鐘內使用的實時消耗
- k - 傳送給過程的信號數量
- p - 進程的平均非共享堆棧大小(千字節)
- r - 進程收到的套接字消息的數量
- s - 進程發送的套接字消息的數量
- t - 進程的平均常駐設置大小,以千字節為單位
- w - 進程自動切換上下文的時間
- x - 命令的退出狀態
您可以按如下方式使用格式化開關:
時間-f“經過時間=%E,輸入%I,輸出%O”
上述命令的輸出將如下所示:
已用時間= 0:01:00,輸入2,輸出1
您可以根據需要混合和匹配交換機。
如果您想添加一個新行作為格式字符串的一部分,請按如下所示使用換行符:
時間-f“經過時間=%E \ n輸入%I \ n輸出%O”
概要
要了解有關time命令的更多信息,請通過運行以下命令來閱讀Linux手冊頁:
男人時間
格式切換不能在Ubuntu中直接使用。 你需要運行命令如下:
在/ usr / bin / time會