在 GitHub 和 GitLab 上,不斷有來自世界各地的開源應用程序和工具涌現。其中有全新的應用程序,也有針對現有各種被廣泛使用的 Linux 程序的替代方案。在本文檔中,我會介紹一些針對top工具(也就是命令行任務管理器程序)的替代方案。
top 工具的替代方案
在本文中,將會介紹以下 6 種top工具的替代方案:
Htop
Vtop
Gtop
Gotop
Ptop
Hegemon
如果后續有更多類似的工具,原作者會在原文進行更新。如果你對此有興趣,可以持續關注。
Htop
htop是一個流行的開源跨平臺交互式進程管理器,也是我最喜歡的系統活動監控工具。htop是對原版top工具的擴展。它最初只是用于 Linux 系統,后來開發者們不斷為其添加對其它類 Unix 操作系統的支持,包括 FreeBSD 和 Mac OS。htop還是一個自由開源軟件,它基于 ncurses 并按照 GPLv2 發布。
和原版的top工具相比,htop工具有這些優勢:
htop比top啟動更快
htop支持橫向滾動和縱向滾動瀏覽進程列表,以便看到所有的進程和完整的命令行
在top工具中進行殺死進程、更改進程優先級這些操作時,需要輸入進程 ID,而在htop工具中則不需要輸入
在htop中可以同時殺死多個進程
在top中每次輸入一個未預設的鍵都要等待一段時間,尤其是在多個鍵組成轉義字符串的時候就更麻煩了
在很多 Linux 發行版的默認軟件倉庫中,都帶有了htop。
在基于 Arch 的操作系統中則可以執行以下命令來安裝htop:
$ sudo pacman -S htop
在基于 Debian 的操作系統使用以下命令:
$ sudo apt install htop
在使用 RPM 軟件管理的操作系統使用以下命令:
$ sudo dnf install htop
或者
$ sudo yum install htop
在 openSUSE 系統中:
$ sudo zypper in htop
用法
不帶任何參數執行 htop 時,會顯示如下畫面:
$ htop
從圖上可以看出,htop會在界面頂部顯示內存、交換空間、任務總數、系統平均負載、系統正常運行時間這些常用指標,在下方則和top一樣顯示進程列表,并且將進程的 ID、用戶、進程優先級、進程 nice 值、虛擬內存使用情況、CPU 使用情況、內存使用情況等信息以多列顯示出來。
和top不同的是,htop支持對不同的操作使用專有的按鍵。以下列出一些用于與htop交互的快捷鍵:
F1、h、?:進入幫助界面。
F2、Shift+s:進入設置界面。在設置界面中可以配置儀表板界面頂部顯示哪些數據,以及設置顏色方案、顯示列、顯示順序等等多種參數。
F3、/:在進程列表中進行搜索。
F4、:進入篩選模式。輸入一個字符串,篩選出包含這個字符串的進程。進入篩選模式后再按一次F4或者ESC可以退出篩選模式。
F5、t:切換默認顯示模式和樹型顯示模式,在樹型顯示模式下按+可以查看子樹。
F6、<、>:依次按照進程 ID、用戶、進程優先級、進程 nice 值、CPU 使用率、內存使用率排序顯示。
F7、]:提高所選進程的優先級。
F8、[:降低所選進程的優先級。
F9、k:殺死所選進程。可以用↑/↓鍵選擇不同的進程并按F9殺死進程。
F10、q: 退出htop
以上這些快捷鍵都在htop界面底部顯示。
需要注意的是,這其中有一些快捷鍵可能會與已有的快捷鍵發生沖突。例如按F2之后可能沒有進入htop的設置界面,而是開始了對終端窗口的重命名。在這種情況下,你可能要更改一下快捷鍵的設置。
除了以上列出的快捷鍵以外,還有一些帶有其它功能的快捷鍵,例如:
u可以選擇顯示某個用戶的進程。
Shift+m可以按照內存使用量對進程列表排序。
Shift+p可以按照 CPU 使用量對進程列表排序。
Shit+t可以按照進程啟動時間對進程列表排序。
CTRL+l刷新界面。
htop的所有功能都可以在啟動后通過快捷鍵來調用,而不需要在啟動的時候帶上某個參數。當然,htop也支持帶參數啟動。
例如按照以下方式啟動htop就可以只顯示某個用戶的進程:
$ htop -u
更改界面自動刷新的時間間隔:
$ htop -d 10
看,htop 確實比 top 好用多了。
想了解 htop 的更多細節,可以查閱它的手冊頁面:
$ man htop
也可以查看它的項目主頁 和 GitHub 倉庫。
Vtop
vtop 是 top 工具的另一個替代方案。它是一個使用 NodeJS 編寫的、自由開源的命令行界面系統活動監視器,并使用 MIT 許可證發布。vtop 通過使用 unicode 中的盲文字符來繪制 CPU 和內存使用情況的可視化圖表。
在安裝 vtop 之前,需要先安裝 NodeJS。如果還沒有安裝 NodeJS,可以按照這個教程進行安裝。
NodeJS 安裝完畢之后,執行以下命令安裝 vtop:
$ npm install -g vtop
安裝好 vtop 就可以執行以下命令開始監控了。
$ vtop
顯示界面如下:
如上圖所示,vtop界面和top、htop都有所不同,它將不同的內容分別以多個框的布局顯示。另外在界面底部也展示了用于與vtop交互的所有快捷鍵。
vtop有這些快捷鍵:
dd:殺死一個進程。
↑、k:向上移動。
↓、j:向下移動。
←、h:放大圖表。
→、l:縮小圖表。
g:跳轉到進程列表頂部。
Shift+g:跳轉到進程列表底部。
c:以 CPU 使用量對進程排序。
m:以內存使用量對進程排序。
想要了解更多關于vtop的細節,可以查閱它的項目主頁或者GitHub 倉庫。
Gtop
gtop和vtop一樣,都是一個使用 NodeJS 編寫、在 MIT 許可下發布的系統活動監視器。
執行以下命令安裝gtop:
$ npm install gtop -g
然后執行以下命令啟動:
$ gtop
顯示界面如下:
gtop有一個優點,就是它會以不同的顏色來顯示不同的模塊,這種表現形式非常清晰明了。
主要的快捷鍵包括:
p:按照進程 ID 對進程排序。
c:按照 CPU 使用量對進程排序。
m:按照內存使用量對進程排序。
q、Ctrl+c:退出。
想要了解更多關于gtop的細節,可以查閱它的GitHub 倉庫。
Gotop
gotop也是一個完全自由和開源的圖表式系統活動監視器。顧名思義,它是在受到gtop和vtop的啟發之后用 Go 語言編寫的,因此也不再對其展開過多的贅述了。
Ptop
有些人對 NodeJS 和 Go 語言的項目可能不太感冒。如果你也是其中之一,你可以試一下使用 Python 編寫的ptop。它同樣是一個自由開源的、在 MIT 許可下發布的系統活動監視器。
ptop同時兼容 Python2.x 和 Python3.x,因此可以使用 Python 的軟件包管理器pip輕松安裝。
安裝pip之后,執行以下命令就可以安裝ptop:
$ pip install ptop
又或者按照以下方式通過源代碼安裝:
$ git clone https://github.com/darxtrix/ptop$ cd ptop/$ pip install -r requirements.txt # install requirements$ sudo python setup.py install
如果需要對 ptop 進行更新,可以這樣操作:
$ pip install --upgrade ptop
即使你不執行更新,ptop 也會在第一次啟動的時候提示你是否需要更新到最新的版本。
現在可以看一下啟動 ptop 后的界面。
$ ptop
就像下面這樣:
ptop的快捷鍵包括以下這些:
Ctrl+k:殺死一個進程。
Ctrl+n:按照內存使用量對進程排序。
Ctrl+t:按照進程啟動時間對進程排序。
Ctrl+r:重置所有數據。
Ctrl+f:對進程進行篩選,輸入進程的名稱就能夠篩選出符合條件的進程。
Ctrl+l:查看所選進程的詳細信息。
g:跳轉到進程列表頂部。
Ctrl+q:退出。
ptop還支持更改顯示主題。如果你想讓ptop更好看,可以選擇你喜歡的主題。可用的主題包括以下這些:
colorful
elegant
simple
dark
light
如果需要更換主題(例如更換到 colorful 主題),可以執行以下命令:
$ ptop -t colorful
使用 -h 參數可以查看幫助頁面:
$ ptop -h
想要了解更多關于 ptop 的細節,可以查閱它的 GitHub 倉庫。
Hegemon
hegemon 是一個使用 Rust 編寫的系統活動監視器,如果你對 Rust 感興趣,也可以了解一下。
總結
以上就是關于 top 工具的 6 個替代方案。我并不會說它們比 top 更好或者可以完全替代 top,但多了解一些類似的工具總是好的。你有使用過這些工具嗎?
推薦閱讀
(點擊標題可跳轉閱讀)
Linux 常用命令:解壓縮篇
在 Linux 命令行中使用 tcpdump 抓包
CPU 100% 異常排查實踐與總結
看完本文有收獲?請分享給更多人
關注「Linux 愛好者」加星標,提升Linux技能
-
Linux
+關注
關注
87文章
11345瀏覽量
210385 -
TOP
+關注
關注
0文章
35瀏覽量
32264 -
RPM
+關注
關注
0文章
45瀏覽量
17741
原文標題:關于 top 工具的 6 個替代方案
文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論