為什麼Linux的htop命令完勝top命令

發表於2014-06-03

在 Linux 系統中,top 命令用來顯示系統中正在執行的程式的實時狀態,它顯示了一些非常有用的資訊,比如 CPU 利用情況、記憶體消耗情況,以及每個程式情況等。但是,你知道嗎?還有另外一個命令列工具 ‘htop’,它與傳統的 top 命令功能一樣,但它有更加強大的功能及能顯示更多的資訊。這篇文章,我們會用例項來討論這個 ‘htop’ 命令。

Linux 中的 htop 命令

下面是從 htop 的手冊頁摘抄下來的相關描述:

它類似於 top 命令,但可以讓你在垂直和水平方向上滾動,所以你可以看到系統上執行的所有程式,以及他們完整的命令列。

可以不用輸入程式的 PID 就可以對此程式進行相關的操作 (killing, renicing)。

首先明白它的輸出

htop 命令以直觀的格式來顯示資訊。下面是 HTOP 的輸出快照:

005732l22oo5a53fam6y3o

 

如果你觀察視窗的左上角部分,你會看到顯示的是 CPU 負載、記憶體消耗及交換空間的實時資訊,右上角包含的是任務、執行緒、平均負載及系統執行時間的資訊。

平均負載部分提供了三個數字,這僅僅表示的是過去的5分鐘、10分鐘和15分鐘系統的平均負載而已,在單核的系統中,平均負載為1表示的是百分之百的 CPU 利用率。最後,執行時間 (uptime)標示的數字是從系統啟動起到當前的執行總時間。

下面,我們將用例子來進一步討論這個命令。

1. 用 F2 鍵編輯配置

htop 命令提供了許多自定義選項,你所要做的就是從主視窗中按下 F2 鍵。

下面所示的是可用的自定義選項:

005734jkbtcubuaspcw5pt

 

只需使用箭頭鍵選擇和更改特定的設定。

2. 通過 F9 鍵傳送訊號

htop 命令可以讓你很容易地在 htop 視窗內給一個程式傳送任意的訊號。按下 F9 鍵即可。

005736oz455s422g11n2u2

 

如你所見,視窗的左邊部分列出的是所有可用的訊號,右邊部分列出的是程式。只要選中訊號,並選擇一個程式,然後按下 enter 鍵,選中的訊號就會傳送到此程式。

3. 顯示程式的樹狀檢視

htop 命令也提供了程式的樹狀檢視檢視功能。按下 F5 鍵切換。

下面是 htop 顯示樹形檢視資訊的例子:

005737mzfdehve9k9d4h9u

 

要退出樹狀檢視模式,請再一次按下 F5 鍵。

4. 通過 F3 鍵搜尋程式

htop 命令提供了易用的方式來搜尋程式。按下 F3 鍵,一個文字框就會出現在視窗底部。

下面是例子:

005739uh0xoeblqla8bn80

 

如您所見,一條名為‘搜尋’的文字提示框出現在視窗底部,您可以在這兒輸入程式的名字然後回車搜尋。如果找到,它會在列出的程式列表裡高亮選中此程式。

5. 通過空格鍵來設定顏色標註程式條目

在系統中執行著的實時程式檢視中,要追蹤某個程式是個大問題。因為整個列表在不停的重新整理著,程式的排列順序也在變動著。為了這個問題, htop 提供了一個很簡單的解決方案:顏色標註。是的,你可以標註一個程式條目,它會以不同的顏色顯示,因此要追蹤它就變得容易了。

要標註某個程式條目,需要做的就是選中此條目,然後按下‘空格’鍵。例如,在下面的截圖示例中,我已經顏色標註了三個程式條目:

005741jvcowsa19c9nzprg

 

所以通過此方法,你就能很輕鬆地追蹤想檢視的程式。

6. 命令列選項

除了上面介紹的一些熱鍵,htop 還提供了很有用的命令列選項。下面是其中一部分:

  • -s 選項 : 按指定的列排序。例如,htop -s PID 命令會按 PID 列的大小排序來顯示。
  • -u 選項 : 顯示指定的使用者的程式資訊列表。例如,htop -u himanshu 命令會只顯示出使用者名稱為 himanshu 的相關程式。
  • -d 選項 : 設定重新整理的延遲時間。例如,htop -d 100 命令會使輸出在1秒後才會重新整理(引數 -d 的單位是10微秒)。

相關文章