文章摘自:http://www.cnblogs.com/mchina/archive/2013/03/15/2858041.htmlhtml
1、htop 簡介bash
This is htop, an interactive process viewer for Linux. It is a text-mode application (for console or X terminals) and requires ncurses.app
Comparison between htop and topssh
In 'htop' you can scroll the list vertically and horizontally to see all processes and complete command lines.ide
In 'top' you are subject to a delay for each unassigned key you press (especially annoying when multi-key escape sequences are triggered by accident).ui
'htop' starts faster ('top' seems to collect data for a while before displaying anything).spa
In 'htop' you don't need to type the process number to kill a process, in 'top' you do..net
In 'htop' you don't need to type the process number or the priority value to renice a process, in 'top' you do.命令行
'htop' supports mouse operation, 'top' doesn't線程
'top' is older, hence, more used and tested.
htop 是Linux系統中的一個互動的進程查看器,一個文本模式的應用程序(在控制檯或者X終端中),須要ncurses。
與Linux傳統的top相比,htop更加人性化。它可以讓用戶交互式操做,支持顏色主題,可橫向或縱向滾動瀏覽進程列表,並支持鼠標操做。
與top相比,htop有如下優勢:
能夠橫向或縱向滾動瀏覽進程列表,以便看到全部的進程和完整的命令行。
在啓動上,比top 更快。
殺進程時不須要輸入進程號。
htop 支持鼠標操做。
top 已經很老了。
htop 官網:http://htop.sourceforge.net/
2、htop 安裝
a. 源碼包安裝
# tar zxvf htop-1.0.2.tar.gz
# cd htop-1.0.2
# ./configure
# make && make install
若出現錯誤:
configure: error: You may want to use --disable-unicode or install libncursesw.
則需安裝 ncurses-devel
# yum install ncurses-devel
b. RHEL/CentOS 安裝
能夠經過 yum install htop 來安裝它,但前提是要添加epel 的yum源,具體請參考 CentOS yum 源的配置與使用。
# rpm -ivh http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL //導入key
# yum install htop
3、htop 參數
鍵入htop 命令,打開htop。
# htop
上面左上角顯示CPU、內存、交換區的使用狀況,右邊顯示任務、負載、開機時間,下面就是進程實時情況。
下面是 F1~F10 的功能和對應的字母快捷鍵。
Shortcut Key | Function Key | Description | 中文說明 |
h, ? | F1 | Invoke htop Help | 查看htop使用說明 |
S | F2 | Htop Setup Menu | htop 設定 |
/ | F3 | Search for a Process | 搜索進程 |
\ | F4 | Incremental process filtering | 增量進程過濾器 |
t | F5 | Tree View | 顯示樹形結構 |
<, > | F6 | Sort by a column | 選擇排序方式 |
[ | F7 | Nice - (change priority) | 可減小nice值,這樣就能夠提升對應進程的優先級 |
] | F8 | Nice + (change priority) | 可增長nice值,這樣就能夠下降對應進程的優先級 |
k | F9 | Kill a Process | 可對進程傳遞信號 |
q | F10 | Quit htop | 結束htop |
命令行選項(COMMAND-LINE OPTIONS)
-C --no-color 使用一個單色的配色方案
-d --delay=DELAY 設置延遲更新時間,單位秒
-h --help 顯示htop 命令幫助信息
-u --user=USERNAME 只顯示一個給定的用戶的過程
-p --pid=PID,PID… 只顯示給定的PIDs
-s --sort-key COLUMN 依此列來排序
-v –version 顯示版本信息
交互式命令(INTERACTIVE COMMANDS)
上下鍵或PgUP, PgDn 選定想要的進程,左右鍵或Home, End 移動字段,固然也能夠直接用鼠標選定進程;
Space 標記/取消標記一個進程。命令能夠做用於多個進程,例如 "kill",將應用於全部已標記的進程
U 取消標記全部進程
s 選擇某一進程,按s:用strace追蹤進程的系統調用
l 顯示進程打開的文件: 若是安裝了lsof,按此鍵能夠顯示進程所打開的文件
I 倒轉排序順序,若是排序是正序的,則反轉成倒序的,反之亦然
+, - When in tree view mode, expand or collapse subtree. When a subtree is collapsed a "+" sign shows to the left of the process name.
a (在有多處理器的機器上) 設置 CPU affinity: 標記一個進程容許使用哪些CPU
u 顯示特定用戶進程
M 按Memory 使用排序
P 按CPU 使用排序
T 按Time+ 使用排序
F 跟蹤進程: 若是排序順序引發選定的進程在列表上處處移動,讓選定條跟隨該進程。這對監視一個進程很是有用:經過這種方式,你可讓一個進程在屏幕上一直可見。使用方向鍵會中止該功能。
K 顯示/隱藏內核線程
H 顯示/隱藏用戶線程
Ctrl-L 刷新
Numbers PID 查找: 輸入PID,光標將移動到相應的進程上
4、htop 使用
4.1. 顯示自帶幫助
鼠標點擊Help或者按F1 顯示自帶幫助
4.2. htop 設定
鼠標點擊Setup或者按下F2 以後進入htop 設定的頁面,Meters 頁面設定了頂端的一些信息顯示,頂端的顯示又分爲左右兩側,到底能顯示些什麼能夠在最右側那欄新增,要新增到上方左側(F5)或是右側(F6)均可以,這就是我的設定的範圍了。這裏多加了一個時鐘。
上方左右兩欄的顯示方式分爲Text Bar Graph Led 四種,下圖我就把 cpu memory swap 改爲文本模式顯示,而後右欄的改爲Bar 顯示,clock 用LED方式顯示。數據顯示都差很少,只是這樣看有點不習慣了。
關於Display options 的設定,可要根據管理者本身的須要來設定。
顏色選擇,除了基本的顏色顯示以外,htop 還提供了換面板的功能,其實也只是改變一些色彩顯示的設定,雖說不能自定義到細部的顏色顯示,可是至少提供了幾種風格能夠選擇。
最後一項的設定是調整 Columns 的顯示,就是在通常htop 指令進來但願能夠看到的什麼樣的數據及信息,字段的調整能夠在這邊作我的化的設定,通常使用系統默認值就行了。
4.3. 搜索進程
鼠標點擊Search 或者按下F3 或者輸入"/", 輸入進程名進行搜索,例如搜索ssh
4.4. 過濾器
按下F4,進入過濾器,至關於關鍵字搜索,不區分大小寫,例如過濾dev
4.5. 顯示樹形結構
輸入"t"或按下F5,顯示樹形結構,意思跟pstree 差很少,能看到全部程序樹狀執行的結構,這對於系統管理來講至關方便,理清程序是如何產生的,固然樹狀結構的瀏覽也能夠依照其餘數據來排序。
4.6. 選擇排序方式
按下F6 就能夠選擇依照什麼來排序,最常排序的內容就是cpu 和memory 吧!
4.7 操做進程
F七、F8分別對應nice-和nice+,F9對應kill給進程發信號,選好信號回車就OK了
4.8. 顯示某個用戶的進程,在左側選擇用戶
輸入"u",在左側選擇用戶
5、Alias top
也許你用慣了top,咱們也能夠用top來打開htop。
編輯/root/.bashrc文件,添加以下代碼
if [ -f /usr/local/bin/htop ]; then alias top=’/usr/local/bin/htop’fi
# source /root/.bashrc