top命令詳解
功能:動態查看進程的變化display Linux tasks
使用權限:所有人
常用選項:
-d:後面可以接秒數,就是整個進程界面更新的秒數,默認是3秒
-b:以批次的方式執行top
-n:與-b一起搭配,意義是需要進行幾次top的輸出結果
-p:指定某些個PID來進行查看監測而已
–u:使用指定的UID或用戶名查看進程,不能單個查看系統用戶的進程
–U:和-u差不多,但是-U後可以跟真實的,有效的,保存的和文件系統的UID
常用子命令
?或h:顯示在top當中可以輸入的按鍵命令,顯示幫助。
k:給予某個PID一個信號(signal)
r:給予某個PID重新制定一個nice值
s:修改刷新的時間間隔(默認3s刷新一次)
1:數字1,查看多核CPU不同的核數的使用情況
<>:翻頁
空格或Enter鍵:立即刷新
o或O:調整字段的顯示順序,按下o後,可以對字段的顯示順序進行設置,按住對應的大寫字母把相應的字段向左移,小寫向右移。這裏要將COMMAND字段顯示到最左端,則按住大寫的X移到最左上面。
f或者F: 從當前顯示中添加或者刪除字段。
A: 在全屏模式和分屏顯示模式間切換
B:開啓/關閉粗體顯示
G :轉到下個窗口
u:顯示指定普通用戶的進程
U:顯示系統用戶的進程
W :將當前設置寫入到配置文件,下次啓動top時將和當前設置一樣。(默認啓動時上次設置自動失效)
Z :設置顏色,改變當前窗口或所有窗口的顏色分佈。
c :切換顯示命令名稱和完整命令行。
= :解除顯示指定進程的限制。當按i只顯示正在運行的進程,而不顯示出於睡眠狀態的進程時,按下=可以解除這種限制,恢復默認顯示。或在終端以top -p 運行top只顯示指定進程時,按下=可以恢復默認顯示。
q:離開top
排序:
P:以CPU的使用資源進行排序
M:以內存的使用資源進行排序
N:以PID來排序
T:由該進程使用的CPU時間累積(TIME+)排序
隱藏或顯示某些項
l:隱藏或顯示uptime信息:
t:隱藏或顯示tasks及cpu信息:
m:隱藏或顯示內存信息:
①top - 13:05:39 up 4:34, 1 user, load average: 0.04, 0.02,0.00
②Tasks: 146 total, 1 running,145 sleeping, 0 stopped, 0 zombie
③Cpu(s): 0.0%us, 0.1%sy, 0.0%ni, 99.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
④Mem: 510528k total, 228952k used, 281576k free, 84624k buffers
⑤Swap: 2097144k total, 0k used, 2097144k free, 77664k cached
⑥PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1547 root 20 0 29760 4124 3352 S 0.7 0.8 0:16.48 vmtoolsd
1 root 20 0 2900 1440 1216 S 0.0 0.3 0:01.78 init
2 root 20 0 0 0 0S 0.0 0.0 0:00.04 kthreadd
3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
4 root 20 0 0 0 0 S 0.0 0.0 0:00.08 ksoftirqd/0
5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
6 root RT 0 0 0 0 S 0.0 0.0 0:00.10 watchdog/0
7 root RT 0 0 0 0 S 0.0 0.0 0:00.25 migration/1
8 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/1
9 root 20 0 0 0 0 S 0.0 0.0 0:00.08 ksoftirqd/1
10 root RT 0 0 0 0 S 0.0 0.0 0:00.11 watchdog/1
11 root RT 0 0 0 0 S 0.0 0.0 0:00.74 migration/2
12 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/
第一行:
13:05:39 | 當前時間 |
up 4:34 | 系統從開機到現在的運行時間,格式是時:分 |
1 user | 當前登錄系統的用戶總數 |
load average: 0.04, 0.02, 0.00
| 系統的平均負載,即任務隊列的平均長度。 三個數值分別爲 1分鐘、5分鐘、15分鐘前到現在的平均值。 |
提示:第一行也可以使用uptime命令輸出同樣的結果
第二行:
Tasks: 146 total | 進程總數 |
1 running | 正在運行中的進程數量 |
145 sleeping | 正在睡眠狀態的進程數量 |
0 stopped | 停止運行的進程數量 |
0 zombie | 殭屍進程的數量 |
第三行:
0.0%us | 用戶空間中的進程所佔據的CPU百分比 |
0.1%sy | 內核中的進程佔用CPU百分比system |
0.0%ni | 用戶進程空間內改變過優先級的進程佔用CPU百分比nice |
99.9%id | 空閒CPU百分比idel |
0.0%wa | 等待io完成所消耗的時間wait |
0.0%hi | 處理硬中斷所消耗的CPU百分比 hardware interrupt |
0.0%si | 處理軟中斷所消耗的CPU百分比sofeware interrupt |
0.0%st | 被虛擬化技術或其它偷走的百分比steal time |
第四行:
Mem: 510528k total, | 物理內存總量 |
228952k used | 已經使用的物理內存總量 |
281576k free, | 空閒內存總量 |
84624k buffers | 緩衝 |
第五行:
Swap: 2097144k total | 交換分區(swap)的總量 |
0k used | 已經使用的交換分區的總量 |
2097144k free, | 空閒的交換分區的總量 |
77664k cached | 緩存 |
第六行:
PID | 進程的PID |
USER | 進程所有者的用戶名 |
PR | 優先級priority |
NI | nice值 |
VIRT | 虛擬內存集VIRT=SWAP+RES |
RES | 常住內存集residence memory set |
SHR | 共享內存集shared memory set |
S | 進程的當前狀態
R:正在運行中;running S:可中斷睡眠interruptable sleeping D:不可中睡睡眠uninterruptable sleeping T:停止Stopped Z:殭屍zombie
+:前臺進程 l:多線程進程 N:低優先級進程 <:高優先級進程 s:session leader
|
%CPU | CPU使用率 |
%MEM | 內存使用率 |
TIME+ | 進程積累佔用CPU的時長 |
COMMAND | 進程名 |
實例:查看單個進程的狀態
[wuxinbing@Linux_11 ~]$ top -p 12885
top - 21:32:07 up 9:41, 3 users, load average: 0.00,0.01, 0.03
Tasks: 1 total, running, 1 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 510528k total, 397888k used, 112640k free, 106468k buffers
Swap: 2097144k total, 0k used, 2097144k free, 187000k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
12885 root 20 0 7580 800 372 S 0.0 0.2 0:00.00 nginx
實例:總共顯示3次top的結果
[root@Linux_11 ~]# top -b -n 3
top - 14:05:22 up 5:33, 1 user, load average: 0.02, 0.01,0.00
Tasks: 150 total, 1 running, 149 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni, 99.9%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 510528k total, 234688k used, 275840k free, 86964k buffers
Swap: 2097144k total, 0k used, 2097144k free, 79140k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 2900 1440 1216 S 0.0 0.3 0:01.82 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.04 kthreadd
3root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
實例:查看指定用戶的進程
[root@Linux_11 ~]# top -u admin #admin是普通用戶不是系統用戶
top - 14:09:28 up 5:37, 2 users, load average: 0.00,0.00, 0.00
Tasks: 154 total, 1 running, 153 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.1%sy, 0.0%ni, 99.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 510528k total, 236828k used, 273700k free, 87148k buffers
Swap: 2097144k total, 0k used, 2097144k free, 79168k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5042 admin 20 0 6744 1604 1364 S 0.0 0.3 0:00.01 bash