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