关于 top 工具的 6 个替代方案

2019-01-02 18:53 by 布网科技

原文出处: SK   译文出处:Linux中国/Hank Chow   

在 GitHub 和 GitLab 上,不断有来自世界各地的开源应用程序和工具涌现。其中有全新的应用程序,也有针对现有各种被广泛使用的 Linux 程序的替代方案。在本文档中,我会介绍一些针对 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 交互的快捷键:

  • F1h?:进入帮助界面。

  • F2Shift+s:进入设置界面。在设置界面中可以配置仪表板界面顶部显示哪些数据,以及设置颜色方案、显示列、显示顺序等等多种参数。

  • F3/:在进程列表中进行搜索。

  • F4、\:进入筛选模式。输入一个字符串,筛选出包含这个字符串的进程。进入筛选模式后再按一次 F4 或者 ESC 可以退出筛选模式。

  • F5t:切换默认显示模式和树型显示模式,在树型显示模式下按 + 可以查看子树。

  • F6、<>:依次按照进程 ID、用户、进程优先级、进程 nice 值、CPU 使用率、内存使用率排序显示。

  • F7]:提高所选进程的优先级。

  • F8[:降低所选进程的优先级。

  • F9k:杀死所选进程。可以用  /  键选择不同的进程并按 F9 杀死进程。

  • F10q: 退出 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

注:本文转载自布网信息科技,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除。
  • 波浪
  • 波浪
  • 波浪
  • 波浪