当前位置:首页 > > 充电吧
[导读] 6 种 top 工具的替代方案

top 工具的替代方案

在本文中,将会介绍以下 6 种 top 工具的替代方案:

  1. Htop

  2. Vtop

  3. Gtop

  4. Gotop

  5. Ptop

  6. 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:

1

$ sudo pacman -S htop

在基于 Debian 的操作系统使用以下命令:

1

$ sudo apt install htop

在使用 RPM 软件管理的操作系统使用以下命令:

1

$ sudo dnf install htop

或者

1

$ sudo yum install htop

在 openSUSE 系统中:

1

$ sudo zypper in htop

用法

不带任何参数执行 htop 时,会显示如下画面:

1

$ 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 就可以只显示某个用户的进程:

1

$ htop -u

更改界面自动刷新的时间间隔:

1

$ htop -d 10

看,htop 确实比 top 好用多了。

想了解 htop 的更多细节,可以查阅它的手册页面:

1

$ man htop

也可以查看它的项目主页 和 GitHub 仓库。

Vtop

vtop 是 top 工具的另一个替代方案。它是一个使用 NodeJS 编写的、自由开源的命令行界面系统活动监视器,并使用 MIT 许可证发布。vtop 通过使用 unicode 中的盲文字符来绘制 CPU 和内存使用情况的可视化图表。

在安装 vtop 之前,需要先安装 NodeJS。如果还没有安装 NodeJS,可以按照这个教程进行安装。

NodeJS 安装完毕之后,执行以下命令安装 vtop:

1

$ npm install -g vtop

安装好 vtop 就可以执行以下命令开始监控了。

1

$ 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:

1

$ npm install gtop -g

然后执行以下命令启动:

1

$ gtop

显示界面如下:

gtop 有一个优点,就是它会以不同的颜色来显示不同的模块,这种表现形式非常清晰明了。

主要的快捷键包括:

  • p:按照进程 ID 对进程排序。

  • c:按照 CPU 使用量对进程排序。

  • m:按照内存使用量对进程排序。

  • q、Ctrl+c:退出。

想要了解更多关于 gtop 的细节,可以查阅它的 GitHub 仓库。

Gotop

gotop 也是一个完全自由和开源的图表式系统活动监视器。顾名思义,它是在受到 gtop 和 vtop 的启发之后用 Go 语言编写的,因此也不再对其展开过多的赘述了。如果你有兴趣了解这个项目,可以阅读《gotop:又一个图表式系统活动监视器》这篇文章。

Ptop

有些人对 NodeJS 和 Go 语言的项目可能不太感冒。如果你也是其中之一,你可以试一下使用 Python 编写的 ptop。它同样是一个自由开源的、在 MIT 许可下发布的系统活动监视器。

ptop 同时兼容 Python2.x 和 Python3.x,因此可以使用 Python 的软件包管理器 pip 轻松安装。如果你没有安装 pip,也可以参考这个教程进行安装。

安装 pip 之后,执行以下命令就可以安装 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

如果需要对 ptop 进行更新,可以这样操作:

1

$ pip install --upgrade ptop

即使你不执行更新,ptop 也会在第一次启动的时候提示你是否需要更新到最新的版本。

现在可以看一下启动 ptop 后的界面。

1

$ 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 主题),可以执行以下命令:

1

$ ptop -t colorful

使用 -h 参数可以查看帮助页面:

1

$ ptop -h

想要了解更多关于 ptop 的细节,可以查阅它的 GitHub 仓库

Hegemon

hegemon 是一个使用 Rust 编写的系统活动监视器,如果你对 Rust 感兴趣,也可以了解一下。我们最近有一篇关于 hegemon 的文章,想要详细了解的读者不妨阅读。

总结

以上就是关于 top 工具的 6 个替代方案。我并不会说它们比 top 更好或者可以完全替代 top,但多了解一些类似的工具总是好的。你有使用过这些工具吗?哪个是你最喜欢的?欢迎在评论区留言


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭