linux命令之top
top命令是顯示當前系統正在執行的進程相關資訊。包括進程ID、記憶體佔用率等;top命令格式如下:
top [OPTIONS]OPTIONS:-b 批處理-c 顯示進程的完整名-I 忽略失效過程-s 保密模式-S 累積模式-i<時間> 設定間隔時間-u<使用者名稱> 指定使用者名稱-p<進程號> 指定進程-n<次數> 迴圈顯示的次數
top輸出資訊:
top - 15:08:48 up 1:53, 3 users, load average: 0.00, 0.01, 0.05Tasks: 160 total, 1 running, 159 sleeping, 0 stopped, 0 zombieCpu(s): 0.1%us, 0.2%sy, 0.0%ni, 99.6%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%stMem: 2061364k total, 1029032k used, 1032332k free, 224832k buffersSwap: 2095100k total, 0k used, 2095100k free, 440620k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1777 root 20 0 150m 80m 13m S 4 4.0 0:19.91 Xorg 3602 gino 20 0 91844 15m 10m S 2 0.8 0:00.45 gnome-terminal 1 root 20 0 3644 1968 1280 S 0 0.1 0:00.80 init 2 root 20 0 0 0 0 S 0 0.0 0:00.00 kthreadd 3 root 20 0 0 0 0 S 0 0.0 0:00.06 ksoftirqd/0 4 root 20 0 0 0 0 S 0 0.0 0:00.00 kworker/0:0 6 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/0 7 root RT 0 0 0 0 S 0 0.0 0:00.03 watchdog/0 8 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/1 10 root 20 0 0 0 0 S 0 0.0 0:00.07 ksoftirqd/1 11 root 20 0 0 0 0 S 0 0.0 0:00.50 kworker/0:1 12 root RT 0 0 0 0 S 0 0.0 0:00.03 watchdog/1 13 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/2 15 root 20 0 0 0 0 S 0 0.0 0:00.02 ksoftirqd/2 16 root RT 0 0 0 0 S 0 0.0 0:00.03 watchdog/2 17 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/3 19 root 20 0 0 0 0 S 0 0.0 0:00.02 ksoftirqd/3 20 root RT 0 0 0 0 S 0 0.0 0:00.03 watchdog/3 21 root 0 -20 0 0 0 S 0 0.0 0:00.00 cpuset 22 root 0 -20 0 0 0 S 0 0.0 0:00.00 khelper 23 root 20 0 0 0 0 S 0 0.0 0:00.00 kdevtmpfs 24 root 0 -20 0 0 0 S 0 0.0 0:00.00 netns 25 root 20 0 0 0 0 S 0 0.0 0:00.00 kworker/u:1 26 root 20 0 0 0 0 S 0 0.0 0:00.02 sync_supers 27 root 20 0 0 0 0 S 0 0.0 0:00.00 bdi-default 28 root 0 -20 0 0 0 S 0 0.0 0:00.00 kintegrityd 29 root 0 -20 0 0 0 S 0 0.0 0:00.00 kblockd 30 root 0 -20 0 0 0 S 0 0.0 0:00.00 ata_sff 31 root 20 0 0 0 0 S 0 0.0 0:00.00 khubd 32 root 0 -20 0 0 0 S 0 0.0 0:00.00 md 34 root 20 0 0 0 0 S 0 0.0 0:00.00 khungtaskd 35 root 20 0 0 0 0 S 0 0.0 0:00.00 kswapd0 36 root 25 5 0 0 0 S 0 0.0 0:00.00 ksmd 37 root 39 19 0 0 0 S 0 0.0 0:00.00 khugepaged 38 root 20 0 0 0 0 S 0 0.0 0:00.00 fsnotify_mark 39 root 20 0 0 0 0 S 0 0.0 0:00.00 ecryptfs-kthrea 40 root 0 -20 0 0 0 S 0 0.0 0:00.00 crypto 48 root 0 -20 0 0 0 S 0 0.0 0:00.00 kthrotld 49 root 20 0 0 0 0 S 0 0.0 0:00.00 scsi_eh_0 50 root 20 0 0 0 0 S 0 0.0 0:00.00 scsi_eh_1 52 root 20 0 0 0 0 S 0 0.0 0:00.00 kworker/u:3 71 root 0 -20 0 0 0 S 0 0.0 0:00.00 devfreq_wq 72 root 20 0 0 0 0 S 0 0.0 0:00.24 kworker/1:1
top 命令輸出資訊說明:
第一行,同uptime命令執行的結果相同15:08:38 --當前系統時間2:16 up --系統已經已耗用時間(這期間系統沒有重啟)3 users --當前登陸系統的使用者數load average --系統負載三個數值分別為 1分鐘、5分鐘、15分鐘第二行,進程說明:160 total -- 系統共有進程數1 running --處於啟動並執行進程數159 sleeping --處於休眠的進程數0 stopped --結束的進程數0 zombie --殭屍進程數第三行,cpu狀態資訊 0.1%us --使用者空間佔用CPU百分比 0.2%sy --核心空間佔用CPU百分比 0.0%ni --改變過優先順序的進程佔用CPU的百分比 99.6%id --空閑CPU百分比 0.1%wa --IO等待佔用CPU的百分比 0.0%hi --硬中斷佔用CPU的百分比 0.0%si --非強制中斷佔用CPU的百分比 0.0%st --CPU使用內部虛擬機器運行任務的時間。第四行,記憶體狀態2061364k total --實體記憶體總量1029032k used --使用中的記憶體總量1032332k free --空閑記憶體總量224832k buffers --緩衝的記憶體總量第五行,交換分區資訊2095100k total --交換區總量0k used --使用的互動區總量2095100k free --閒置互動區總量440620k cached --緩衝的互動區總量
第七行,各進程的狀態監控項目列。PID --進程idUSER --進程所有者PR --進程優先順序NI --nice值。負值表示高優先順序,正值表示低優先順序VIRT --進程使用的虛擬記憶體總量。VIRT = SWAP+RESRES --進程使用的、未被換出的實體記憶體大小。RES = CODE+DATASHR --共用記憶體大小。S --進程狀態。 S:睡眠 R:運行 T:跟蹤/停止 Z:殭屍進程 D: 不可中斷的睡眠狀態%CPU --上次更新到現在的CPU時間佔用百分比%MEM --進程使用的無論記憶體百分比TIME+ --進程使用的CPU時間總計,單位1/100秒COMMAND --進程名稱
top 互動命令
執行top命令後,可以使用一些互動命令。這些命令都是單字母的,如果在命令列使用s選項,其中一些命令可能會被屏蔽。
h 顯示協助畫面,給出一些簡短的命令總結說明k 終止一個進程。i 忽略閑置和僵死進程。這是一個開關式命令。q 退出程式r 重新安排一個進程的優先順序別S 切換到累計模式s 改變兩次重新整理之間的延遲時間(單位為s),如果有小數,就換算成m s。輸入0值則系統將不斷重新整理,預設值是5 sf或者F 從當前顯示中添加或者刪除項目o或者O 改變顯示項目的順序l 切換顯示平均負載和啟動時間資訊m 切換顯示記憶體資訊t 切換顯示進程和CPU狀態資訊c 切換顯示命令名稱和完整命令列M 根據駐留記憶體大小進行排序P 根據CPU使用百分比大小進行排序T 根據時間/累計時間進行排序W 將當前設定寫入~/.toprc檔案中