为什么 Linux 的 htop 命令完胜 top 命令
在 Linux 系统中,top 命令用来显示系统中正在运行的进程的实时状态,它显示了一些非常有用的信息,比如 CPU 利用情况、内存消耗情况,以及每个进程情况等。但是,你知道吗?还有另外一个命令行工具 'htop',它与传统的 top 命令功能一样,但它有更加强大的功能及能显示更多的信息。这篇文章,我们会用实例来讨论这个 'htop' 命令。
Linux 中的 htop 命令
下面是从 htop 的手册页摘抄下来的相关描述:
它类似于 top 命令,但可以让你在垂直和水平方向上滚动,所以你可以看到系统上运行的所有进程,以及他们完整的命令行。
可以不用输入进程的 PID 就可以对此进程进行相关的操作 (killing, renicing)。
首先明白它的输出
htop 命令以直观的格式来显示信息。下面是 HTOP 的输出快照:

htop
如果你观察窗口的左上角部分,你会看到显示的是 CPU 负载、内存消耗及交换空间的实时信息,右上角包含的是任务、线程、平均负载及系统运行时间的信息。
平均负载部分提供了三个数字,这仅仅表示的是过去的5分钟、10分钟和15分钟系统的平均负载而已,在单核的系统中,平均负载为1表示的是百分之百的 CPU 利用率。最后,运行时间 (uptime)标示的数字是从系统启动起到当前的运行总时间。
下面,我们将用例子来进一步讨论这个命令。
1. 用 F2 键编辑配置
htop 命令提供了许多自定义选项,你所要做的就是从主窗口中按下 F2 键。
下面所示的是可用的自定义选项:

htop-settings
只需使用箭头键选择和更改特定的设置。
2. 通过 F9 键发送信号
htop 命令可以让你很容易地在 htop 窗口内给一个进程发送任意的信号。按下 F9 键即可。

signals
如你所见,窗口的左边部分列出的是所有可用的信号,右边部分列出的是进程。只要选中信号,并选择一个进程,然后按下 enter 键,选中的信号就会发送到此进程。
3. 显示进程的树状视图
htop 命令也提供了进程的树状视图查看功能。按下 F5 键切换。
下面是 htop 显示树形视图信息的例子:

treeView
要退出树状视图模式,请再一次按下 F5 键。
4. 通过 F3 键搜索进程
htop 命令提供了易用的方式来搜索进程。按下 F3 键,一个文本框就会出现在窗口底部。
下面是例子:

search
如您所见,一条名为‘搜索’的文本提示框出现在窗口底部,您可以在这儿输入进程的名字然后回车搜索。如果找到,它会在列出的进程列表里高亮选中此进程。
5. 通过空格键来设置颜色标注进程条目
在系统中运行着的实时进程视图中,要追踪某个进程是个大问题。因为整个列表在不停的刷新着,进程的排列顺序也在变动着。为了这个问题, htop 提供了一个很简单的解决方案:颜色标注。是的,你可以标注一个进程条目,它会以不同的颜色显示,因此要追踪它就变得容易了。
要标注某个进程条目,需要做的就是选中此条目,然后按下‘空格’键。例如,在下面的截图示例中,我已经颜色标注了三个进程条目:

color-tag
所以通过此方法,你就能很轻松地追踪想查看的进程。
6. 命令行选项
除了上面介绍的一些热键,htop 还提供了很有用的命令行选项。下面是其中一部分:
- -s 选项 : 按指定的列排序。例如,htop -s PID 命令会按 PID 列的大小排序来显示。
- -u 选项 : 显示指定的用户的进程信息列表。例如,htop -u himanshu 命令会只显示出用户名为 himanshu 的相关进程。
- -d 选项 : 设置刷新的延迟时间。例如,htop -d 100 命令会使输出在1秒后才会刷新(参数 -d 的单位是10微秒)。
via: http://linoxide.com/linux-command/linux-htop-command/
译者:runningwater 校对:Caroline
编译自:http://linoxide.com/linux-command/linux-htop-command/
原创:LCTT https://linux.cn/article-3141-1.html译者: runningwater
为什么 Linux 的 htop 命令完胜 top 命令的更多相关文章
- 在Linux终端执行clear或top命令时出现:'xterm': unknown terminal type
在Linux终端执行clear或top命令时出现:'xterm': unknown terminal type的错误. 例如: [root@localhost phpmyadmin]# clear ' ...
- Linux中系统检测工具top命令
Linux中系统检测工具top命令 本文转自:https://www.cnblogs.com/zhoug2020/p/6336453.html 首先介绍top中一些字段的含义: VIRT:virtua ...
- linux常用命令:top 命令
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.下面详细介绍它的使用方法.top是 一个动态显示过程,即可以通过用户按键来不断刷 ...
- Linux查看系统当前登录用户的命令,top命令看到users有多个用户登录
Linux查看系统当前登录用户的命令,top命令看到users有多个用户登录 作为系统管理员,top命令看到users有多个用户登录,会需要查看下是否被黑客进入了. 实战例子:top命令:top - ...
- 每天一个linux命令:top命令
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.下面详细介绍它的使用方法.top是一个动态显示过程,即可以通过用户按键来不断刷新 ...
- Linux课程---12、linux中内存指令(top命令的作用是什么)
Linux课程---12.linux中内存指令(top命令的作用是什么) 一.总结 一句话总结: top实时观察进程.内存和CPU情况 1.电脑出现反应慢情况,最先想到的是什么? 内存 2.linux ...
- Linux学习历程——Centos 7 top命令
一.命令介绍 top 命令用于动态的监控进程活动与系统负载信息. 格式为 top [参数] 二.实例 直接运行top命令 top命令执行结果的前五行为系统整体的统计信息,代表含义如下: 第1行:系统时 ...
- 每天一个linux命令(34)--top命令
今天给领导发邮件,我这边虽然显示发出去了,但是他那边一直没收到,结果我以为我发了,他又一直在那边等结果.所以说,以后要另外发个信息或者QQ微信之类的说一声. top命令是Linux 下常用的性能分析工 ...
- 【Linux命令】top命令
一.简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,常用于服务端性能分析. 二.使用 1.查看进程内线程情况 top -Hp 2556(2556为进程号)找 ...
随机推荐
- Linux内核实践之序列文件【转】
转自:http://blog.csdn.net/bullbat/article/details/7407194 版权声明:本文为博主原创文章,未经博主允许不得转载. 作者:bullbat seq_fi ...
- C++开发资源汇总
这次的资源涉及到了标准库.Web应用框架.人工智能.数据库.图片处理.机器学习.日志.代码分析等,C++程序员学习必备! Jason frozen : C/C++的Jason解析生成器 Jansson ...
- Appium+python自动化2-环境搭建(下)【转载】
前言 上一篇android测试开发环境已经准备好, 接下来就是appium的环境安装了.环境安装过程中切勿浮躁,按照步骤一个个来. 环境装好后,可以用真机连电脑,也可以用android-sdk里 ...
- RobotFramework自动化4-批量操作案例【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/robotframework/ 前言 有时候一个页面上有多个对象需要操作,如果一个个去定 ...
- 在C#中调用格式工厂进行任意视频格式到FLV的转换
1.下载安装格式工厂和完美解码器 2.运行格式工厂,转换一个RMVB到FLV,注意找个大点的,使时间长一些.防止在未执行步骤3时就结束了 3.在进程中查看某个进程的命令行参数是什么? wmic pro ...
- shell spool
If you wish to use SQL*Plus Command-line , you'll simply issue the sqlplus command from your shell: ...
- PDF审计工具peepdf
PDF审计工具peepdf PDF是Portable Document Format(便携式文档格式)的缩写.它是Adobe公司推出的文件格式规范.现在,PDF是网络电子书籍的主流格式.由于PDF ...
- ASP.NET基础题(1-10)
1.简述 private. protected. public. internal 修饰符的访问权限. private : 私有成员, 在类的内部才可以访问. protected : 保护成员,该类内 ...
- 利用json2csharp快速生成C#类
有的时候,我们需要将一些Json格式的字符串反序列化为.Net对象,虽然有强大的Json.net可以帮助我们快速完成这一操作.但首先仍需要我们根据Json数据手动编写C#类,这也是一件比较枯燥而容易出 ...
- delphi 浮点数转换成十六进制字符串的方法
我们在研究封包技术时,经常会碰到将浮点数转换成十六进制形式.比如在游戏中人物的座标,经常就用浮点数来表示.怎么将浮点数转换成十六进制字符串形式呢?下面我将写出其在DELPHI中的方法. 先 ...