一些替代“ top”的命令行实用程序

时间:2020-03-21 11:47:17  来源:igfitidea点击:

“ top”命令行实用程序的替代方法

可以使用下面的方法替代Top程序:

  • Htop
  • Vtop
  • Gtop
  • Gotop
  • Ptop
  • Hegemon
  • Bashtop / Bpytop

如果以后会遇到任何类似的实用程序,我将继续更新此列表。
如果我们有兴趣了解此类实用程序,请在本教程上添加书签。

1. Htop

htop是一种流行的,开放源代码和跨平台的交互式过程管理器。
这是我最喜欢的系统活动监视工具。
htop是经典top程序的增强版本。
它最初是为Linux开发的,但是开发人员将其支持扩展到了其他类似Unix的操作系统,例如FreeBSD和Mac OSX。
htop程序是免费的开放源代码,并且在GPLv2下发布了基于ncurses的实用程序。

与经典的top命令相比,它具有以下一些优点。

  • htop的启动速度比top程序快。
  • htop允许我们水平和垂直滚动查看所有进程和完整的命令行。
  • 无需键入PID即可终止htop中的进程。但最重要的是,我们需要输入PID以终止进程。
  • 无需键入PID即可更改进程的优先级,但是在top命令中,我们可以这样做。
  • 我们可以在htop中一次杀死多个进程。
  • 在顶级程序中,我们按下的每个未分配键都会有延迟。当意外触发多键转义序列时,这尤其令人烦恼。

1.1. 在Linux上安装htop

大多数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

1.2. Htop用法

当htop命令不带任何参数时,我们将看到以下 Screen。

$htop

如我们所见,htop任务管理器在顶部显示总内存和交换使用情况,任务总数,系统平均负载和系统正常运行时间。
在底部,就像top命令一样,它以多列显示进程列表。
每列显示详细信息,例如pid,用户,优先级,值,虚拟内存使用率,cpu使用率,每个进程的内存使用率等。
我们可以在第一段中链接的顶部命令教程中了解这些参数。

与top命令不同,htop允许我们使用专用功能键执行每个操作。
这是与htop交互的快捷键列表。

  • F1,h ,? -打开帮助部分。
  • F2,S(Shift + s)-转到设置部分,我们可以在该部分配置在 Screen顶部显示的仪表,设置各种显示选项,在配色方案中进行选择,以及选择显示哪些列,按什么顺序等。
  • F3,/-搜索所有显示进程的命令行。
  • F4,-过滤过程。只需键入进程名称的一部分,我们将仅看到与名称匹配的进程。再次按F4并按ESC键以取消过滤。
  • F5,t-在树形视图和默认视图之间切换。按+查看子树。
  • F6,<,>-按PID,USER,PRIORITY,NICE值,CPU使用率,MEMORY使用率等对进程进行排序。
  • F7,]-增加所选过程的优先级。
  • F8,[-降低所选进程的优先级。
  • F9,k-终止进程。使用上/下箭头选择过程,然后按F9或者k终止它。
  • F10,q-退出htop。

所有快捷键都在htop界面的底部给出。

请注意,其中一些功能键可能已分配给各种终端操作。
例如,当我按下F2键时,它并没有进入htop设置部分。
相反,它显示了将标题设置为“我的终端”窗口的选项。
在这种情况下,我们可能需要与功能键一起提供其他键。

除了上述按键外,几乎没有其他按键可用于执行不同的功能。
例如,

  • 按“ u”显示用户拥有的进程。
  • Shift + m将按内存使用情况对进程进行排序。
  • Shift + p-按处理器使用情况对进程进行排序。
  • Shit + t-按时间对进程进行排序。
  • CTRL + l-刷新 Screen。

htop可以使用快捷键执行所有操作,而无需在启动时提及任何选项。
但是,我们可以在启动时使用一些标志。

例如,要启动htop只显示给定用户拥有的进程,请运行:

$htop -u <username>

更改输出刷新间隔:

$htop -d 10

如我们所见,htop的使用比top命令的使用要容易得多。

请参阅htop手册页以了解有关可用选项和功能的更多信息。

$man htop

2. Vtop

Vtop是旧的top实用程序的另一种替代方法。
它是用NodeJS编写并在MIT下发布的免费和开放源代码的命令行系统活动监视器。
它使用Unicode盲文字符绘制CPU和内存图表,可视化峰值。

确保在系统上安装了NodeJS。

一旦安装了节点,请运行以下命令以安装Vtop。

$npm install -g vtop

安装Vtop之后,只需运行vtop即可开始监视。

$vtop

如我们所见,Vtop界面与top和htop程序略有不同。
它以单独的框式布局显示每个详细信息。
我们将在底部看到所有与Vtop交互的快捷键。

这是快捷方式列表:

  • dd-终止进程。
  • 向上箭头或者k-向上移动。
  • 向下箭头或者j-向下移动。
  • 向左箭头或者或者向-放大图表。
  • 向右箭头或者l-缩小图形。
  • g-跳到进程列表的顶部。
  • SHIFT + g-跳转到进程列表的末尾。
  • c-按CPU使用率对进程进行排序。
  • m-按内存使用情况对进程进行排序。

3. Gtop

Gtop与Vtop系统活动监视器相同。
它也是用NodeJS编写的,并在MIT许可下发布。

要安装它,请运行:

$npm install gtop -g

使用以下命令启动gtop:

$gtop

我注意到Gtop界面非常好。
它以不同的颜色显示了每个元素,令人赏心悦目。

键盘快捷键:

  • p-按流程ID对流程进行排序。
  • c-按CPU使用率对进程进行排序。
  • m-按内存使用情况对进程进行排序。
  • q或者ctrl + c-退出Gtop。

有关更多详细信息,请访问Gtop GitHub页面。

  • Gtop GitHub存储库

4. Gotop

顾名思义,Gotop是使用Go编程语言编写的TUI图形活动监视器。
它是完全免费的开源软件,其灵感来自我们在上一节中提到的gtop和vtop程序。

5. Ptop

你们中有些人可能不喜欢用NodeJS和Go编写的程序。
如果我们是其中之一,那么还有另一个名为Ptop的进程监视器程序,它是用Python编程语言编写的。
它是免费的开放源代码系统活动监视器,已根据MIT许可发布。

Ptop与Python2.x和Python3.x兼容,因此我们可以使用软件包管理器Pip轻松安装它,以安装使用Python开发的程序。
如果尚未安装Pip,请参考以下链接。

  • 如何使用Pip管理Python软件包

安装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具有更改主题的功能。
如果要输出漂亮的Ptop,则可以使用任何可用的主题。
当前支持以下主题:

  • 丰富多彩的
  • 优雅的
  • 简单的
  • 黑暗的

要设置一个主题(例如彩色),只需运行:

$ptop -t colorful

要查看帮助部分,请使用-h:

$ptop -h

6.Hegemon

Hegemon是另一个用Rust编程语言编写的系统活动监视器应用程序。
如果我们喜欢用Rust编写的程序,那么Hegemon可能是一个不错的选择。

7. Bashtop/Bpytop

Bashtop和Bpytop是命令行系统资源监视器,将向我们显示系统的使用情况以及处理器,内存,磁盘,网络和进程的统计信息。
他们没有太大的区别。
这两个实用程序具有相同的目的并具有相同的功能集。
唯一的区别是两者都是用不同的编程语言编写的。
Bashtop用Bash编写,Bpytop用Python编写。