top 命令_您可能想知道的'top'命令行实用程序的一些替代方案

2023-10-14 19:10

本文主要是介绍top 命令_您可能想知道的'top'命令行实用程序的一些替代方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文译自: Some Alternatives To ‘top’ Command line Utility You Might Want To Know

翻译校对: EmuLab

原文及本文遵循: [CC BY-NC 协议]

2750f4cfc3efb07f556251149a4b5aab.png

世界各地的开发人员正在向GitHub和GitLab添加许多的开源程序,工具和实用程序。其中一些程序是最新的,也有一些程序只是被开发来作为现有的受欢迎和广泛使用的Linux程序的替代程序。在本教程中,我们将讨论一些好的替代top这个命令行任务管理器程序的方法。请继续阅读。

替代'top'命令行工具

在编写本指南时,我知道Top程序的以下6种替代方案,即:

  1. Htop
  2. Vtop
  3. Gtop
  4. Gotop
  5. Ptop
  6. Hegemon

如果我在未来的日子遇到任何类似的工具,我会不断更新此列表。如果您有兴趣了解此类命令行工具,请为本指南添加书签。

1. Htop

htop是一个流行的,开源的跨平台交互式流程管理器。这是我最喜欢的系统活动监控工具之一。htop是经典top程序的增强版本。它最初是为Linux开发的,但开发人员将其支持扩展到其他类Unix操作系统,如FreeBSD和Mac OS X。htop是免费开源的,其基于ncurses并在GPLv2下进行发布。

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

  • htop的启动速度比top快。
  • htop允许我们水平和垂直滚动以查看所有进程和完整的命令行。
  • 无需键入PID即可终止htop中的进程。但在top中,您需要键入PID以终止进程。
  • 无需键入PID来更改进程的优先级,但是在top命令中,你需要提供PID。
  • 我们可以在htop中同时杀死多个进程。
  • 在top中,您按下的每个未分配键都会有延迟。当多键逃逸序列被意外触发时尤其令人讨厌。

安装htop

htop在大多数Linux发行版的默认软件仓库中都可用。

在基于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
82cc71721e07bcbeb698fc9b5119c2f7.png

htop默认界面

如您所见,htop任务管理器在顶部显示总内存和交换内存的使用情况,任务总数,系统平均负载和系统正常运行时间。在底部,就像top命令一样,它以多列的形式显示进程列表。每列显示详细信息,例如pid,用户,优先级,nice值,虚拟内存使用情况,cpu使用情况,每个进程的内存使用情况等。

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

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

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

除了上面提到的键之外,还有更多的键可用于执行不同的功能。例如,

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

htop可以使用快捷键完成所有操作,而无需在启动时提及任何选项。但是,启动时可以使用一些参数。

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

$ htop -u 

更改输出刷新时间间隔:

$ htop -d 10

正如您所看到的,htop的使用比使用top命令要容易得多。

请参阅htop手册页以了解更多有关htop的功能键的信息。

$ man htop

2. Vtop

Vtop 是古老的top程序的另一种替代品。它是一个免费的开源命令行系统活动监视器,用NodeJS 编写并在MIT许可证下发布。它使用unicode braille字符绘制CPU和内存图表,帮助您可视化系统峰值。

确保在系统上安装了NodeJS。

安装节点后,运行以下命令以安装Vtop。

$ npm install -g vtop

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

$ vtop

示例输出:

3cc505f67fa117dd12ebcd277d6bbf4b.png

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

以下是快捷方式列表:

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

3. Gtop

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

要安装它,请运行:

$ npm install gtop -g

使用命令启动gtop:

$ gtop

示例输出:

55c9d798a86f21ef35fd44e8fa1b9ff6.png

运行中的gtop

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

键盘快捷键:

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

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

4. Gotop

顾名思义,Gotop 是一个TUI图形活动监视器,用Go 编程语言编写。它是完全免费开源的,并且受到我们在前面部分中提到的gtop 和vtop 程序的启发。这里不过多介绍。

5. Ptop

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

Ptop兼容Python2.x和Python3.x,因此您可以使用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
76931ed5b64e1ebf9ca60c2a78a4f38c.png

运行中的ptop

以下是与ptop交互的快捷键列表:

  • Ctrl + k - 杀死进程。
  • Ctrl + n - 按内存使用情况对进程进行排序。
  • Ctrl + t - 按进程生命周期排序进程。
  • Ctrl + r - 重置统计数据。
  • Ctrl + f - 过滤特定的进程信息。只需输入进程名称,您将只看到其详细信息。
  • Ctrl + l - 查看所选进程的信息。
  • g - 转到进程列表的顶部。
  • Ctrl + q - 退出Ptop。

Ptop具有改变主题的功能。如果你想要一个漂亮的Ptop输出,你可以使用任何一个可用的主题。目前支持以下主题:

  • 丰富多彩(colorful)
  • 优雅(elegant)
  • 简单(simple)
  • 黑暗(dark)
  • 光(light)

要设置主题,例如colorful,只需运行:

$ ptop -t colorful

要查看帮助信息,请使用-h :

$ ptop -h

有关更多详细信息,请参阅项目的GitHub页面。

6.Hegemon

Hegemon 是另一个用Rust编程语言编写的系统活动监视器程序。如果你喜欢用Rust编写的程序,Hegemon可能是个不错的选择。访问Hegemon官网以了解更多信息。

结论

你现在知道Top程序的六种替代方案。我不会声称这些程序一定就比“top”程序更好。但了解一些替代方案总是很好的。我主要使用htop来监控进程。现在轮到你了。你使用过任何这里列出的工具吗?哪个是您最喜欢的工具?为什么?请在下面的评论部分分享您的经验。

推荐阅读(点击跳转):

如何方便地在Linux上查询硬件信息并生成报告

3个重启Linux系统的命令(以及4个安全实现的方式)

如何轻松地在命令行上同时移动多种类型的文件?

GameHub:将所有的游戏统一到一个屋檐(平台)下

喜欢使用Linux办公、学习、hack的朋友们可以点击关注小编,小编将竭力提供更多内容给大家交流~

这篇关于top 命令_您可能想知道的'top'命令行实用程序的一些替代方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/212531

相关文章

Java进行文件格式校验的方案详解

《Java进行文件格式校验的方案详解》这篇文章主要为大家详细介绍了Java中进行文件格式校验的相关方案,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、背景异常现象原因排查用户的无心之过二、解决方案Magandroidic Number判断主流检测库对比Tika的使用区分zip

浅谈mysql的sql_mode可能会限制你的查询

《浅谈mysql的sql_mode可能会限制你的查询》本文主要介绍了浅谈mysql的sql_mode可能会限制你的查询,这个问题主要说明的是,我们写的sql查询语句违背了聚合函数groupby的规则... 目录场景:问题描述原因分析:解决方案:第一种:修改后,只有当前生效,若是mysql服务重启,就会失效;

IDEA中Git版本回退的两种实现方案

《IDEA中Git版本回退的两种实现方案》作为开发者,代码版本回退是日常高频操作,IntelliJIDEA集成了强大的Git工具链,但面对reset和revert两种核心回退方案,许多开发者仍存在选择... 目录一、版本回退前置知识二、Reset方案:整体改写历史1、IDEA图形化操作(推荐)1.1、查看提

Python实现html转png的完美方案介绍

《Python实现html转png的完美方案介绍》这篇文章主要为大家详细介绍了如何使用Python实现html转png功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 1.增强稳定性与错误处理建议使用三层异常捕获结构:try: with sync_playwright(

Java使用多线程处理未知任务数的方案介绍

《Java使用多线程处理未知任务数的方案介绍》这篇文章主要为大家详细介绍了Java如何使用多线程实现处理未知任务数,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 知道任务个数,你可以定义好线程数规则,生成线程数去跑代码说明:1.虚拟线程池:使用 Executors.newVir

MySQL中闪回功能的方案讨论及实现

《MySQL中闪回功能的方案讨论及实现》Oracle有一个闪回(flashback)功能,能够用户恢复误操作的数据,这篇文章主要来和大家讨论一下MySQL中支持闪回功能的方案,有需要的可以了解下... 目录1、 闪回的目标2、 无米无炊一3、 无米无炊二4、 演示5、小结oracle有一个闪回(flashb

Android App安装列表获取方法(实践方案)

《AndroidApp安装列表获取方法(实践方案)》文章介绍了Android11及以上版本获取应用列表的方案调整,包括权限配置、白名单配置和action配置三种方式,并提供了相应的Java和Kotl... 目录前言实现方案         方案概述一、 androidManifest 三种配置方式

Linux find 命令完全指南及核心用法

《Linuxfind命令完全指南及核心用法》find是Linux系统最强大的文件搜索工具,支持嵌套遍历、条件筛选、执行动作,下面给大家介绍Linuxfind命令完全指南,感兴趣的朋友一起看看吧... 目录一、基础搜索模式1. 按文件名搜索(精确/模糊匹配)2. 排除指定目录/文件二、根据文件类型筛选三、时间

使用mvn deploy命令上传jar包的实现

《使用mvndeploy命令上传jar包的实现》本文介绍了使用mvndeploy:deploy-file命令将本地仓库中的JAR包重新发布到Maven私服,文中通过示例代码介绍的非常详细,对大家的学... 目录一、背景二、环境三、配置nexus上传账号四、执行deploy命令上传包1. 首先需要把本地仓中要

Windows命令之tasklist命令用法详解(Windows查看进程)

《Windows命令之tasklist命令用法详解(Windows查看进程)》tasklist命令显示本地计算机或远程计算机上当前正在运行的进程列表,命令结合筛选器一起使用,可以按照我们的需求进行过滤... 目录命令帮助1、基本使用2、执行原理2.1、tasklist命令无法使用3、筛选器3.1、根据PID