linux的top命令簡介
top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源占用狀況,類似于Windows的任務管理器。
top顯示系統當前的進程和其他狀況,是一個動態顯示過程,即可以通過用戶按鍵來不斷刷新當前狀態.如果在前臺執行該命令,它將獨占前臺,直到用戶 終止該程序為止. 比較準確的說,top命令提供了實時的對系統處理器的狀態監視.它將顯示系統中CPU最“敏感”的任務列表.該命令可以按CPU使用.內存使用和執行時間 對任務進行排序;而且該命令的很多特性都可以通過交互式命令或者在個人定制文件中進行設定。
在linux系統中,top命令可謂是分析系統性能最方便的工具,而且top還是個交互式工具;通過top命令可以清楚地了解到正在執行的進程信息包括進程ID,內存占用率,CPU占用率等。其實就跟window的任務管理器類似。
運行top命令的結果如下:

第一行是任務隊列信息,跟 uptime 命令的執行結果類同,具體參數說明如下:
- 19:40:19 — 指當前系統時間
- up 35 days, 20:32 — 表示系統已經運行了35天20小時32分鐘(是指在這期間系統沒有重新啟動過,持續運行)
- 1 users — 當前有1個用戶登錄系統
- load average: 0.00, 0.00, 0.00 — load average后面的三個數分別是1分鐘、5分鐘、15分鐘的負載情況。
- load average數據是每隔5秒鐘檢查一次活躍的進程數,然后按特定算法計算出的數值。如果這個數除以邏輯CPU的數量,結果高于5的時候就表明系統在超負荷運轉了。
第二行,Tasks — 任務(進程),具體信息說明如下:
- 系統現在共有81個進程,其中處于運行中的有1個,80個在休眠(sleep),stoped狀態的有0個,zombie狀態(僵尸)的有0個,要特別留意zombie的進程哦。
第三行,cpu狀態信息,具體屬性說明如下:
- 0.0%us — 用戶空間占用CPU的百分比。
- 0.0%sy — 內核空間占用CPU的百分比。
- 0.0%ni — 改變過優先級的進程占用CPU的百分比
- 100.0%id — 空閑CPU百分比
- 0.0%wa — IO等待占用CPU的百分比
- 0.0%hi — 硬中斷(Hardware IRQ)占用CPU的百分比
- 0.0%si — 軟中斷(Software Interrupts)占用CPU的百分比
- 0.0%st — 這個我也不知道……
第四行, Mem內存狀態,具體信息說明如下:
- 1029828k total — 物理內存總量(1GB)
- 804628k used — 使用中的內存總量(767M)
- 228200k free — 空閑內存總量(217M)
- 167208k buffers — 緩存的內存量(159M)
第五行,swap交換分區信息,具體信息說明如下:
- 0k total — 交換區總量(0K)
- 0k used — 使用的交換區總量(0K)
- 0k free — 空閑交換區總量(0K)
- 401672k cached — 緩沖的交換區總量(383M)
第六行,空行。
第七行以下:各進程(任務)的狀態監控,列信息說明如下:
- PID — 進程id
- USER — 進程所有者
- PR — 進程優先級
- NI — nice值。負值表示高優先級,正值表示低優先級
- VIRT — 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
- RES — 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
- SHR — 共享內存大小,單位kb
- S — 進程狀態。D=不可中斷的睡眠狀態 R=運行 S=睡眠 T=跟蹤/停止 Z=僵尸進程
- %CPU — 上次更新到現在的CPU時間占用百分比
- %MEM — 進程使用的物理內存百分比
- TIME+ — 進程占用的CPU時間總計,單位1/100秒
- COMMAND — 進程名稱(命令名/命令行)
top 命令參數:
- -b 批處理
- -c 顯示完整的 COMMAND
- -I 忽略失效過程
- -s 保密模式
- -S 累積模式
- -i<時間> 設置間隔時間
- -u<用戶名> 指定用戶名
- -p<進程號> 指定進程
- -n<次數> 循環顯示的次數
top 的交互命令(在top命令運行過程中輸入以下命令即可):
- q:退出程序。
- h或者? :顯示幫助畫面,給出一些簡短的命令總結說明。
- k :終止一個進程。系統將提示用戶輸入需要終止的進程PID,以及需要發送給該進程什么樣的信號。一般的終止進程可以使用15信號;如果不能正常結束那就使用信號9強制結束該進程。默認值是信號15。在安全模式中此命令被屏蔽。
- i:忽略閑置和僵尸進程。這是一個開關式命令。
- M:根據駐留內存大小進行排序。
- P:根據CPU使用百分比大小進行排序。
- T:根據時間/累計時間進行排序。
- W:將當前設置寫入~/.toprc文件中。這是寫top配置文件的推薦方法。
- r:重新安排一個進程的優先級別。系統提示用戶輸入需要改變的進程PID以及需要設置的進程優先級值。輸入一個正值將使優先級降低,反之則可以使該進程擁有更高的優先權。默認值是10。
- l:切換顯示平均負載和啟動時間信息。即顯示影藏第一行
- m:切換顯示內存信息。即顯示影藏內存行
- t:切換顯示進程和CPU狀態信息。即顯示影藏CPU行
- c:切換顯示命令名稱和完整命令行。 顯示完整的命令。 這個功能很有用。
- S:切換到累計模式。
- s:改變兩次刷新之間的延遲時間。系統將提示用戶輸入新的時間,單位為s。如果有小數,就換算成ms。輸入0值則系統將不斷刷新,默認值是5s。需要注意的是如果設置太小的時間,很可能會引起不斷刷新,從而根本來不及看清顯示的情況,而且系統負載也會大大增加。
- f或者F:從當前顯示中添加或者刪除項目。
- o或者O:改變顯示項目的順序。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接