一、htop 簡介
htop 是Linux系統中的一個互動的進程查看器,一個文本模式的應用程序(在控制台或者X終端中),需要ncurses。與Linux傳統的top相比,htop更加人性化。它可讓用戶交互式操作,支持顏色主題,可橫向或縱向滾動瀏覽進程列表,並支持鼠標操作。
htop相比較top的優勢:
- 可以橫向或縱向滾動瀏覽進程列表,以便看到所有的進程和完整的命令行。
- 在啟動上比top 更快。
- 殺進程時不需要輸入進程號。
- htop 支持鼠標選中操作(反應不太快)。
- top 已不再維護。
htop的作者Hisham Muhammad在github上的項目:https://github.com/hishamhm/htop
二、htop 安裝
a. 源碼包編譯安裝
[root@zangfans ~]# tar zxvf htop-1.0.2.tar.gz [root@zangfans ~]# cd htop-1.0.2 [root@zangfans ~]# yum -y install ncurses-devel [root@zangfans ~]# yum -y install gcc [root@zangfans ~]# ./configure [root@zangfans ~]# make [root@zangfans ~]# make install
b. 通過yum安裝htop
建一個阿里雲yum倉庫直接安裝
搭建aliyun倉庫 [root@zangfans ~]# cd /etc/yum.repos.d [root@zangfans ~]# vim zf.repo [EPEL] name=aliyun baseurl=https://mirrors.aliyun.com/centos/6/os/x86_64/ gpgcheck=0 [root@zangfans ~]# yum clean all [root@zangfans ~]# yum makecache [root@zangfans ~]# yum install htop
三、htop 參數
鍵入htop 命令,打開htop
[root@zangfans ~]# 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,光標將移動到相應的進程上
四、htop 使用
4.1. 顯示自帶幫助
鼠標點擊Help或者按F1 顯示自帶幫助
4.2. htop 設定
鼠標點擊Setup或者按下F2 之后進入htop 設定的頁面,Meters 頁面設定了頂端的一些信息顯示,頂端的顯示又分為左右兩側,到底能顯示些什么可以在最右側那欄新增,要新增到上方左側(F5)或是右側(F6)都可以,這就是個人設定的范圍了。這里多加了一個時鍾。
上方左右兩欄的顯示方式分為Text Bar Graph Led 四種
關於Display options 的設定,可要根據管理者自己的需要來設定。
4.3. 搜索進程
鼠標點擊Search 或者按下F3 或者輸入"/", 輸入進程名進行搜索,例如搜索bash
4.4. 過濾器
按下F4,進入過濾器,相當於關鍵字索引,不區分大小寫,如果篩選條件一直保存,可以通過Esc鍵清除
4.5. 顯示樹形結構
輸入"t"或按下F5,顯示樹形結構,效果和pstree命令差不多,父子進程可以列出來,命令集合的東西很多。
4.6. 選擇排序方式
按下F6 就可以指定目標條件顯示
4.7 操作進程
F7調高優先級nice-和F8調低優先級nice+,F9kill選中的進程發信號
4.8. 顯示某個用戶的進程,在左側選擇用戶
輸入"u",在左側選擇用戶
五、Alias top
使用老式top命令
編輯/root/.bashrc文件此文件對當前用戶生效,添加如下代碼
[root@zangfans ~]# vim /root/.bashrc if [ -f /usr/local/bin/htop ]; then alias top=’/usr/local/bin/htop’ fi [root@zangfans ~]# source /root/.bashrc