一文吃透Linux htop命令

本文详细介绍了htop,一个类似于Windows任务管理器的Linux实用程序,重点讲解了其安装方法、与top命令的对比、常用选项、交互式功能以及显示字段含义。通过实例演示如何使用htop进行进程管理和定制显示设置。
摘要由CSDN通过智能技术生成

一、命令介绍

htop命令是一个Linux实用程序,用于显示有关系统进程的关键信息。它可以被看作是Windows任务管理器的Linux版本。Htop更像是一个交互式程序,因为它支持鼠标和键盘操作来在值和选项卡之间切换。

二、安装

Debian/Ubuntu下

apt install htop

Fedora下

dnf install htop

snap包安装

snap install htop

从源码构建编译

wget https://github.com/htop-dev/htop/archive/refs/tags/3.3.0.tar.gz

tar -zxvf 3.3.0.tar.gz

cd 3.3.0

./configure

make

make install

四、与top命令比较

与Linux传统的top相比,htop更加人性化。它可让用户交互式操作,支持颜色主题,可横向或纵向滚动浏览进程列表,并支持鼠标操作。

htop优点:

  • 可以横向或纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行。
  • 在启动上,比top 更快。
  • 杀进程时不需要输入进程号。
  • htop 支持鼠标操作。
  • top比较繁琐。

top缺点:

  • 只支持键盘操作。
  • 显示也单调。

四、语法

htop [-dCFhpustvH]

五、常用选项

命令行选项

  • -d, --delay=DELAY:更新之间的延迟,即进程每次刷新的间隔时间,单位:十分之几秒,例如10/10,则为1秒,100/10则为10秒,DELAY最小值为1,最大值为100,如果DELAY的值小于1,则自动变更为1,如果大于100,自动变更为100。

  • -C, --no-color --no-colour:黑白模式,无颜色显示。

  • -F, --filter=FILTER:通过固定字符串过滤进程,字符串不会视作正则表达式,且不区分大小写,多个字符串用|隔开。

  • -h, --help:打印帮助信息。

  • -p, --pid=PID,PID...:仅显示指定的PID进程信息,可指定多个,使用逗号,隔开。

  • -s --sort-key COLUMN:通过字段排序。

  • -u, --user=USERNAME|UID:仅显示指定的用户所属进程,可传用户名或用户id。

  • -U, --no-unicode:图形仪表不使用unicode,而是使用ASCII字符。

  • -M, --no-mouse:禁用鼠标控制。

  • --readonly:只读模式,禁用所有系统和进程变更特性。

  • -V, --version:打印版本信息。

  • -t, --tree:以树形结构展示进程列表。

  • -H --highlight-changes=DELAY:高亮新的和旧的进程。

交互式命令

  • Tab, Shift-Tab:选择要显示的下一个/上一个屏幕选项卡。

  • Up, Alt-k:在进程列表中选择(高亮)上一个进程。

  • Down, Alt-j:在进程列表中选择(高亮)下一个进程。

  • Left, Alt-h:向左滚动进程列表。

  • Right, Alt-l:向右滚动进程列表。

  • PgUp, PgDn:在一个窗口向上或向下滚动进程列表,即翻页。

  • Home:滚动到进程列表顶部,并选中第一个进程。

  • End:滚动到进程列表底部,并选中最后一个进程。

  • Ctrl-A, ^:向左滚动到进程字段项的开头。

  • Ctrl-E, $:向右滚动到进程字段项的结尾。

  • Space(空格):标记或取消标记进程。可以操作的命令多个进程,如“kill”,将应用于标记的进程列表,而不是当前高亮的进程。

  • c:标记当前进程及其子进程。可以执行的命令在多个进程上操作,如“kill”,然后将应用标记的进程列表,而不是当前的高亮进程。

  • U:取消标记所有进程,包括使用Spacec标记的。

  • s:跟踪进程系统调用:如果已经安装strace,按此键将把它附加到当前选定的进程发出的系统调用的实时更新这个过程。

  • l:显示进程打开的文件,如果已经安装lsof,按此键将会调用lsof

  • w:显示所选进程的命令行在单独的一屏,根据需要包装成多行。

  • x:在单独的一屏显示所选进程的活动文件锁。

  • F1, h, ?:跳到帮助信息页面。

  • F2, S:跳到安装页面,可以定制标尺显示、设置显示指定的选项、选择配色方案、设置显示指定的字段、字段的顺序。

  • F3, /:在搜索模式下,循环匹配,F3查找下一个匹配的,Shift + F3查找上一个匹配的。

  • F4, \:通过固定字符串(非正则表达式)过滤匹配到的进程;取消过滤时,再次输入过滤选项,并按ESC;此过滤不区分大小写,多个过滤条件,使用|隔开。

  • F5, t:树形视图,按父级组织进程,并布局它们之间的关系就像一棵树。切换使用此选项会在树视图和之前选择的排序视图之间切换,注意:选择排序视图将退出树视图。

  • F6, <, >:选择要排序的字段。

  • F7, ]:增加所选进程的优先级值。

  • F8, [:减少所选进程的优先级值。

  • Shift-F7, }:增加所选进程的自动分组优先级值。

  • Shift-F8, {:减少所选进程的自动分组优先级值。

  • F9, k:杀死进程,发送一个在菜单中被选中的信号:一个或一组进程。如果进程被标记,向所有标记的进程发送信号。如果没有标记,发送到当前选定的进程。

  • F10, q:退出

  • I:反转排序,如果排序顺序增加,则切换到递减,反之亦然。

  • +, -, *:在树视图模式下,展开或折叠子树。当一个子树被折叠,“+”号显示在左侧进程名称。按“*”将展开或折叠所有
    没有父节点的PID的子节点。

  • u:仅显示指定用户拥有的进程。

  • N:通过PID排序。

  • M:通过内存使用率排序。

  • P:通过CPU使用率排序。

  • T:通过时间排序。

  • F:如果排序顺序导致当前选定进程在列表中移动,使选择栏跟随它。这对于监控进程很有用这样,你就可以让进程始终在屏幕上显示。

  • K:隐藏内核进程,可切换隐藏和显示。

  • H:隐藏用户级进程,可切换隐藏和显示。

  • O:隐藏容器化进程,可切换隐藏和显示。

  • p:显示运行程序的全路径,可切换隐藏和显示。

  • Z:暂停/恢复进程更新,可切换。

  • m:合并execommcmdline,可切换。

  • Ctrl-L:刷新进程列表。

  • [Numbers]:通过PID搜索指定进程,然后高亮显示。

六、显示的字段说明

在这里插入图片描述

CPU和内存使用

左上面板对应CPU和内存的使用,1-4,代表CPU的核心数,柱状图描述了使用每个核心的进程数量和类型,柱状图上的值表示每个核心被消耗的百分比。

CPU的色彩编码

  • Green:用户进程所消耗的CPU量。

  • Red:系统进程所消耗的CPU量。

  • Grey:用于基于输入/输出的进程的CPU数量。

  • Blue:低优先级进程消耗的CPU数量。

内存的色彩编码

  • Green:用于运行系统中进程的RAM百分比。

  • Blue:缓冲区页面消耗的RAM百分比。

  • Orange/Yellow:用于缓存内存的RAM百分比。

任务统计

在这里插入图片描述

右上面板显示的是任务统计部分。

  • 172代表系统当前任务/进程数。

  • 172个进程由551个线程(thr)处理。

  • 551个线程中,有108个内核线程(kthr)。

  • 172个进程中,只有一个进程在运行。

  • 由于这是一个四核系统,所以最大负载量为4.01.16表示最近一分钟的平均负载;1.04代表最近5分钟的平均负载;0.93代表最近15分钟的平均负载。

  • Uptime表示自上次系统重启以来的时间长度。

进程信息说明

在这里插入图片描述

  • PID (Process ID) :进程id。

  • USER:进程所有者。

  • PRI (Priority):内核对进程的优先级。

  • NI (Nice Value):用户查看的进程优先级,nice值越高,优先级越低。

  • VIRT (Virtual Memory):进程消耗的虚拟内存量。

  • RES (Resident Memory):进程正在使用的RAM的比例。

  • SHR (Shared Memory):任务占用的共享内存量。

  • S (Status):进程状态,S(休眠), R(运行中)。

  • CPU%:进程消耗的CPU百分比。

  • MEM%:进程消耗的内存百分比。

  • TIME+:进程持续的时间。

  • Command:包含程序名称和参数的进程的完整命令。

七、应用实例

  • 一般用法
htop
  • 显示指定用户的进程
htop -u root
  • 显示指定PID的进程
htop -p 123,456,789
  • 指定字段排序
htop -s PERCENT_MEM

说明:通过内存使用百分比排序
  • 设置进程刷新的时间间隔
htop -d 10

说明:设置间隔为1秒,即10/10
  • 黑白模式
htop -C
  • 显示成树形结构
htop -t

八、htop源码

在这里插入图片描述

九、官方文档

在这里插入图片描述

十、man pages

在这里插入图片描述

  • 18
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
htop是一个交互式的系统监控工具,类似于Linux系统中的top命令,它提供了更多的功能和更友好的界面。下面是htop命令的详细解释: 1. 查看系统概览:启动htop后,你会看到一个包含进程列表的窗口。窗口的顶部显示了系统的整体信息,包括CPU使用率、内存使用情况、交换空间使用情况和系统负载等。 2. 进程列表:htop的主要部分是进程列表,它显示了所有正在运行的进程以及与之相关的详细信息。每个进程都有一个PID(进程ID)和一个PPID(父进程ID)。你可以使用方向键上下移动光标来选择不同的进程。 3. 列表中的颜色表示:htop使用不同的颜色来表示进程的状态和优先级。绿色表示正常运行的进程,蓝色表示正在休眠的进程,红色表示正在使用CPU的进程,黄色表示IO等待的进程,紫色表示有线程的进程。 4. 功能键:htop支持一些功能键来执行不同的操作。例如,你可以按F9键来杀死选定的进程,按F10键退出htop等。 5. 排序进程:你可以按照不同的方式对进程进行排序,例如按CPU使用率、内存使用率、进程ID等。只需按下F6键,然后选择你想要的排序方式。 6. 进程树:htop可以以树形结构显示进程的父子关系。按下F5键,然后选择"Tree"选项,你将看到一个以树形结构显示的进程列表。 7. 进程操作:htop允许你对选定的进程执行一些操作。使用方向键选择进程后,你可以按下F1键来查看可用的操作列表。 这些是htop命令的一些常用功能和选项,它可以帮助你更直观地监控系统的运行情况。你可以通过输入"htop"命令来启动htop并尝试这些功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值