TOP命令

1、top命令的內容

top - 17:28:21 up 42 days, 8:51, 5 users, load average: 1.13, 1.04, 1.05   

當前時間 啓動天數 啓動時間 用戶 平均負載  
17:28:21 — 當前系統時間
42 days,  8:51 — 系統已經運行了428小時51分鐘(在這期間沒有重啓過)
2 users — 當前有5個用戶登錄系統
load average:  1.13, 1.04, 1.05load average後面的三個數分別是1分鐘、5分鐘、15分鐘的負載情況

Tasks: 227 total, 2 running, 224 sleeping, 0 stopped, 1 zombie

總進程數 運行進程 睡眠進程 停止進程 僵死進程
Tasks — 任務(進程),系統現在共有227個進程,其中處於運行中的有2個,224個在休眠(sleep),stoped狀態的有0個,zombie狀態(殭屍)的有1個。

%Cpu(s): 22.9 us, 1.9 sy, 0.0 ni, 75.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st 

CPU情況
22.9% us — 用戶空間佔用CPU的百分比。
1.9% sy — 內核空間佔用CPU的百分比。
0.0% ni — 改變過優先級的進程佔用CPU的百分比
75.3% id — 空閒CPU百分比
0.0% wa — IO等待佔用CPU的百分比
0.0% hi — 硬中斷(Hardware IRQ)佔用CPU的百分比
0.0% si — 軟中斷(Software Interrupts)佔用CPU的百分比

KiB Mem: 8055272 total, 7677752 used, 377520 free, 813112 buffers  

內存狀況
8306544k total — 物理內存總量(8GB)
7775876k used — 使用中的內存總量(7.7GB)
530668k free — 空閒內存總量(530M)
79236k buffers — 緩存的內存量 (79M)

KiB Swap: 10485756 total, 1264312 used, 9221444 free. 1957668 cached Mem

交換分區狀況
10485756k total — 交換區總量(10GB)
1264312k used — 使用的交換區總量(1.2GB)
9221444k free — 空閒交換區總量(9GB)
1957668k cached — 緩衝的交換區總量(2GB)

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

各進程(任務)的狀態監控
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 — 進程名稱(命令名/命令行)                                                                                                                                        

29637 lcliang 20 0 2081092 905912 106492 R 85.4 11.2 886:43.61 iceweasel
1270 root 20 0 289640 78532 40868 S 6.6 1.0 1285:14 Xorg 3813 lcliang 20 0 2774716 104284 75688 S 4.3 1.3 4:59.76 VirtualBox
3411 lcliang 20 0 3224476 155264 94232 S 4.0 1.9 5:40.45 VirtualBox 32392 lcliang 20 0 525996 32668 18944 S 3.3 0.4 11:15.89 mate-terminal
1322 lcliang 20 0 858468 22836 16468 S 0.3 0.3 0:22.28 VBoxSVC

2、top的命令使用

top使用格式

top [-] [d] [p] [q] [c] [C] [S] [s]  [n]
選項:
d 指定每兩次屏幕信息刷新之間的時間間隔。當然用戶可以使用s交互命令來改變之。 
p 通過指定監控進程ID來僅僅監控某個進程的狀態。 
q 該選項將使top沒有任何延遲的進行刷新。如果調用程序有超級用戶權限,那麼top將以儘可能高的優先級運行。 
S 指定累計模式 
s 使top命令在安全模式中運行。這將去除交互命令所帶來的潛在危險。 
i 使top不顯示任何閒置或者僵死進程。 
c 顯示整個命令行而不只是顯示命令名

下面介紹在top命令執行過程中可以使用的一些交互命令。從使用角度來看,熟練的掌握這些命令比掌握選項還重要一些。這些命令都是單字母的,如果在命令行選項中使用了s選項,則可能其中一些命令會被屏蔽掉。
Ctrl+L 擦除並且重寫屏幕。 
h或者? 顯示幫助畫面,給出一些簡短的命令總結說明。 
k       終止一個進程。系統將提示用戶輸入需要終止的進程PID,以及需要發送給該進程什麼樣的信號。一般的終止進程可以使用15信號;如果不能正常結束那就使用信號9強制結束該進程。默認值是信號15。在安全模式中此命令被屏蔽。 
i 忽略閒置和僵死進程。這是一個開關式命令。 
q 退出程序。 
r 重新安排一個進程的優先級別。系統提示用戶輸入需要改變的進程PID以及需要設置的進程優先級值。輸入一個正值將使優先級降低,反之則可以使該進程擁有更高的優先權。默認值是10。 
S 切換到累計模式。 
s 改變兩次刷新之間的延遲時間。系統將提示用戶輸入新的時間,單位爲s。如果有小數,就換算成m s。輸入0值則系統將不斷刷新,默認值是5 s。需要注意的是如果設置太小的時間,很可能會引起不斷刷新,從而根本來不及看清顯示的情況,而且系統負載也會大大增加。 
f或者F 從當前顯示中添加或者刪除項目。 
o或者O 改變顯示項目的順序。 
l 切換顯示平均負載和啓動時間信息。 
m 切換顯示內存信息。 
t 切換顯示進程和CPU狀態信息。 
c 切換顯示命令名稱和完整命令行。 
M 根據駐留內存大小進行排序。 
P 根據CPU使用百分比大小進行排序。 
T 根據時間/累計時間進行排序。 
W 將當前設置寫入~/.toprc文件中。這是寫top配置文件的推薦方法。


附常用操作:
top   //每隔5秒顯式所有進程的資源佔用情況
top -d 2  //每隔2秒顯式所有進程的資源佔用情況
top -c  //每隔5秒顯式進程的資源佔用情況,並顯示進程的命令行參數(默認只有進程名)
top -p 12345 -p 6789//每隔5秒顯示pid是12345和pid是6789的兩個進程的資源佔用情況
top -d 2 -c -p 123456 //每隔2秒顯示pid是12345的進程的資源使用情況,並顯式該進程啓動的命令行參數
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章