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

相关文章

C#高效实现在Word文档中自动化创建图表的可视化方案

《C#高效实现在Word文档中自动化创建图表的可视化方案》本文将深入探讨如何利用C#,结合一款功能强大的第三方库,实现在Word文档中自动化创建图表,为你的数据呈现和报告生成提供一套实用且高效的解决方... 目录Word文档图表自动化:为什么选择C#?从零开始:C#实现Word文档图表的基本步骤深度优化:C

Python + Streamlit项目部署方案超详细教程(非Docker版)

《Python+Streamlit项目部署方案超详细教程(非Docker版)》Streamlit是一款强大的Python框架,专为机器学习及数据可视化打造,:本文主要介绍Python+St... 目录一、针对 Alibaba Cloud linux/Centos 系统的完整部署方案1. 服务器基础配置(阿里

SpringSecurity中的跨域问题处理方案

《SpringSecurity中的跨域问题处理方案》本文介绍了跨域资源共享(CORS)技术在JavaEE开发中的应用,详细讲解了CORS的工作原理,包括简单请求和非简单请求的处理方式,本文结合实例代码... 目录1.什么是CORS2.简单请求3.非简单请求4.Spring跨域解决方案4.1.@CrossOr

Redis 命令详解与实战案例

《Redis命令详解与实战案例》本文详细介绍了Redis的基础知识、核心数据结构与命令、高级功能与命令、最佳实践与性能优化,以及实战应用场景,通过实战案例,展示了如何使用Redis构建高性能应用系统... 目录Redis 命令详解与实战案例一、Redis 基础介绍二、Redis 核心数据结构与命令1. 字符

使用MyBatis TypeHandler实现数据加密与解密的具体方案

《使用MyBatisTypeHandler实现数据加密与解密的具体方案》在我们日常的开发工作中,经常会遇到一些敏感数据需要存储,比如用户的手机号、身份证号、银行卡号等,为了保障数据安全,我们通常会对... 目录1. 核心概念:什么是 TypeHandler?2. 实战场景3. 代码实现步骤步骤 1:定义 E

Python实现繁体转简体功能的三种方案

《Python实现繁体转简体功能的三种方案》在中文信息处理中,繁体字与简体字的转换是一个常见需求,无论是处理港澳台地区的文本数据,还是开发面向不同中文用户群体的应用,繁简转换都是不可或缺的功能,本文将... 目录前言为什么需要繁简转换?python实现方案方案一:使用opencc库方案二:使用zhconv库

交换机救命命令手册! 思科交换机排障命令汇总指南

《交换机救命命令手册!思科交换机排障命令汇总指南》在交换机配置与故障排查过程中,总会遇到那些“关键时刻靠得住的命令”,今天我们就来分享一份思科双实战命令手册... 目录1. 基础系统诊断2. 接口与链路诊断3. L2切换排障4. L3路由与转发5. 高级调试与日志6. 性能与QoS7. 安全与DHCP8.

故障定位快人一步! 华为交换机排障命令汇总

《故障定位快人一步!华为交换机排障命令汇总》在使用华为交换机进行故障排查时,首先需要了解交换机的当前状态,通过执行基础命令,可以迅速获取到交换机的系统信息、接口状态以及配置情况等关键数据,为后续的故... 目录基础系统诊断接口与链路诊断L2切换排障L3路由与转发高级调试与日志性能、安全与扩展IT人无数次实战

MyBatis Plus中执行原生SQL语句方法常见方案

《MyBatisPlus中执行原生SQL语句方法常见方案》MyBatisPlus提供了多种执行原生SQL语句的方法,包括使用SqlRunner工具类、@Select注解和XML映射文件,每种方法都有... 目录 如何使用这些方法1. 使用 SqlRunner 工具类2. 使用 @Select 注解3. 使用

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出