深入了解 Linux htop 命令:功能、用法与示例
文章目录
- 深入了解 Linux htop 命令:功能、用法与示例
- 什么是 htop?
- htop 的安装
- htop的基本功能
- A区:系统资源使用情况
- B区:系统概览信息
- C区:进程列表
- D区:功能键快捷方式
- 与 top 的对比
- 常见用法与示例
- 实际场景应用
- 高级功能
- 常见问题与解决方法
- 总结与建议
深入了解 Linux htop 命令:功能、用法与示例
什么是 htop?
htop 是一个交互式的进程查看工具,用于 Linux 和类 Unix 系统。相比传统的 top 命令,htop 提供了更加直观和用户友好的界面,支持颜色高亮、鼠标操作以及更多可视化功能,适合系统资源的实时监控和管理。
htop 的安装
在不同发行版中安装:
-
Debian/Ubuntu:
sudo apt update sudo apt install htop -
CentOS/RHEL:
在 CentOS 7 及以上版本:sudo yum install epel-release sudo yum install htop -
Arch Linux:
sudo pacman -S htop -
macOS (使用 Homebrew):
brew install htop
htop的基本功能
主界面组成部分:
- 顶部: 系统资源利用率(CPU、内存、交换分区)。
- 中部: 进程列表,显示 PID、用户、CPU、内存等信息。
- 底部: 快捷键列表,显示操作指引。
启动 htop:
htop

A区:系统资源使用情况
- CPU:各核心的利用率以彩色条形图表示,颜色代表不同类型的负载:
- 绿色:用户进程负载
- 蓝色:低优先级(NICE)进程负载
- 红色:内核负载
- 内存:当前系统物理内存使用情况,单位为 MB 或 GB。
- Swap:交换分区的使用情况,通常用来表示物理内存耗尽时的额外内存使用。
B区:系统概览信息
- 任务总数:当前运行中的任务数量。
- 线程数:当前系统活跃线程的数量。
- 平均负载:三个数字分别表示过去 1 分钟、5 分钟和 15 分钟的系统负载。
- 运行时间:从系统启动到当前的总运行时长,以
days:hours:minutes格式显示。
C区:进程列表
显示当前系统的所有进程,并提供丰富的列信息:
| 列名 | 含义 |
|---|---|
| PID | 进程标识号,唯一标志一个进程 |
| USER | 进程所有者的用户名 |
| PR | 进程优先级(越小优先级越高) |
| NI | NICE 值,调整优先级的数值 |
| VIRT | 进程占用的虚拟内存值 |
| RES | 进程占用的物理内存值 |
| SHR | 进程使用的共享内存值 |
| S | 进程状态:S=休眠,R=运行,Z=僵尸,N=负 NICE 值 |
| %CPU | 进程占用 CPU 的使用率 |
| %MEM | 进程占用的内存比例(物理内存) |
| TIME+ | 进程启动后占用的总 CPU 时间 |
| COMMAND | 进程的启动命令及其参数 |
D区:功能键快捷方式
通过底部列出的功能键,用户可以快速完成不同的操作:
| 快捷键 | 功能 |
|---|---|
F1 | 查看帮助文档 |
F2 | 进入设置菜单,调整界面显示及列排序 |
F3 | 搜索特定进程 |
F4 | 筛选进程(支持关键字过滤) |
F5 | 切换到树状视图 |
F6 | 更改排序列(默认按 CPU 使用率排序) |
F7 | 增加 NICE 值(降低优先级) |
F8 | 减少 NICE 值(提高优先级) |
F9 | 终止选定进程 |
F10 | 退出 htop 界面 |
与 top 的对比
| 功能 | htop | top |
|---|---|---|
| 界面 | 彩色界面,支持鼠标操作 | 文本界面,仅支持键盘 |
| 操作方式 | 交互式,支持选择性操作 | 需要记住更多快捷键 |
| 可定制性 | 高,可通过配置文件调整显示样式 | 低,仅支持命令行选项 |
| 功能扩展 | 支持水平/垂直滚动查看进程 | 无滚动功能,显示有限 |
常见用法与示例
1. 按用户筛选进程:
htop --user=mysql

2. 按优先级排序:
启动后按 F6,选择 PRI 或 NICE 列。
从 sort by 选择列

3. 显示特定进程树:
按 F5 切换到树状视图,方便查看进程的父子关系。

4. 自定义显示列:
按 F2 进入设置菜单,选择“Columns”以调整需要显示的列。
5. 保存配置:
htop 的配置文件位于 ~/.config/htop/htoprc。您可以手动编辑,或通过 F2 配置后自动保存。
6.指定进程:
htop -p 1

7.指定刷新间隔
# 5秒刷新
htop -d 50

实际场景应用
1. 定位高 CPU 占用进程:
在界面中按 F6,选择 CPU 排序。高亮显示的进程即是高占用者。
2. 内存不足时查找问题进程:
按 F6 选择内存排序,查找内存消耗异常的进程。
3. 多核心 CPU 负载监控:
顶部显示所有 CPU 核心的利用率,可以快速判断负载分布是否均衡。
4. 批量终止进程:
通过 Space 键选中多个进程后,按 F9 一次性终止。
高级功能
1. 设置进程优先级:
选中目标进程,按 F7 降低优先级(增加 NICE 值),按 F8 提高优先级(减小 NICE 值)。
2. 网络 IO 和磁盘 IO 监控:
在设置菜单中启用相关列(如 IO_Read、IO_Write)以监控进程的网络和磁盘操作。
3. 远程服务器监控:
通过 SSH 登录远程服务器后直接运行 htop 监控远程主机资源。
ssh user@remote-server
htop
常见问题与解决方法
问题 1:启动时提示找不到命令
确保已安装 htop,并将其路径加入 PATH 环境变量。
问题 2:无法终止某些进程
尝试使用更高权限运行 htop:
sudo htop
总结与建议
htop 是一款强大且易用的工具,无论是新手还是资深系统管理员,都能在日常管理中受益匪浅。其直观的界面和灵活的交互方式,使得资源监控、问题排查以及系统优化更加高效。
建议在日常使用中,结合 htop 的快捷键和筛选功能,以快速定位问题,提高工作效率。
欢迎留言讨论 😊
相关文章:
深入了解 Linux htop 命令:功能、用法与示例
文章目录 深入了解 Linux htop 命令:功能、用法与示例什么是 htop?htop 的安装htop的基本功能A区:系统资源使用情况B区:系统概览信息C区:进程列表D区:功能键快捷方式 与 top 的对比常见用法与示例实际场景应…...
JDK1.8新增特性
新特性: Lambda表达式: (语法三要素:参数、箭头、代码) JDK1.8引入的一种新语法Lambda表达式,它简化了匿名内部类的使用和提高代码的可读性。 /**正常写法创建Runable**/ Runnable runnable new Runnable() {Overridepublic voi…...
环境背景文本到语音转换
目录 概述演示效果核心逻辑使用方式 概述 本文所涉及的所有资源的获取方式:https://www.aspiringcode.com/content?id100000000027&uid2f1061526e3a4548ab2e111ad079ea8c 论文标题: 本文提出了 VoiceLDM,这是一种旨在生成准确遵循两种…...
后端数据增删改查基于Springboot+mybatis mysql 时间根据当时时间自动填充,数据库连接查询不一致,mysql数据库连接不好用
目录 后端数据增删改查Springboot 实体(entity)类引进添加UserMapper接口 创建对用的UserController注意数据库查询不一致新增数据更新删除postman测试 后端数据增删改查 基于之前构建系统,实现用户数据的CRUD。 打开navicat16,…...
《Python编程实训快速上手》第九天--调试技巧
一、抛异常 异常类型分为两类,第一类是Python自带的异常类型(见《Python编程快速上手》第一天---前三章打基础),第二类是自定义异常。 面对自定义异常类型,使用raise抛异常,类型值默认为Exception&#x…...
html5复习一
目标 1、html5介绍及开发工具 2、html5标签 3、文本样式 4、图片标签和超链接标签 知识点: 万维网的构成: 1、url:统一资源定位器 2、http/https:超文本传输协议 3、html:超文本标记语言 html的后缀名: .html 和 .htm html基本…...
SSL/TLS,SSL,TLS分别是什么
SSL/TLS,SSL,TLS分别是什么 SSL(Secure Sockets Layer,安全套接层) 定义与发展历程: SSL 是一种早期的网络安全协议,旨在为网络通信提供保密性、数据完整性和身份验证等安全保障。它最初由网景…...
css iframe标签使用
<iframe> 标签用于在网页中嵌入另一个 HTML 页面。它非常灵活,可用于嵌入内容,比如其他网站、视频、地图等。以下是有关 <iframe> 的详细介绍及使用方法: 基本语法 <iframe src"URL" width"宽度" height…...
API的妙用
我们都知道,通过使用API可以快速开发部署应用,不需要从头开始收集处理数据。能够很好地提高效率。 一、加速应用程序开发和部署 通过调用API接口,可以快速获取数据、实现功能或整合其他服务,无需从零开始编写大量的代码…...
HTML5超酷响应式视频背景动画特效(六种风格,附源码)
文章目录 1.设计来源1.1 大气蓬勃动态背景界面效果1.2 星空闪闪动态背景界面效果1.3 眼神深眸动态背景界面效果1.4 星空银河动态背景界面效果1.5 花开花落动态背景界面效果1.6 海底世界动态背景界面效果 2.效果和源码2.1 动态效果2.2 源代码 源码下载万套模板,程序开…...
Spire.PDF for .NET【页面设置】演示:打开 PDF 时自动显示书签或缩略图
用户打开 PDF 文档时,他们会看到 PDF 的初始视图。默认情况下,打开 PDF 时不会显示书签面板或缩略图面板。在本文中,我们将演示如何设置文档属性,以便每次启动文件时都会打开书签面板或缩略图面板。 Spire.PDF for .NET 是一款独…...
算法中常用到的数学知识:埃拉托色尼筛法(获取质数)、欧几里得算法(求两个数最大公因数)
不管是在项目中还是面试时,一定的算法能力都是极其重要的。大多数算法只要有一定的基础,给足够的时间是可以写出来的,然而有一类算法,说难也不难,说简单也不简单,这种算法通常涉及到某种数学知识࿰…...
实战OpenCV之人脸识别
基础入门 随着计算机视觉技术和深度学习的发展,人脸识别已经成为一项广泛应用的技术,涵盖了从安全监控、身份验证、智能家居到大型公共安全项目等多个领域。 人脸识别技术通常包括以下几个主要步骤。 图像采集:通过摄像头或其他图像采集设备,捕获包含人脸的图像或视频帧。 …...
图像预处理之图像滤波
目录 图像滤波概览 均值滤波(Mean Filter) 中值滤波(Median Filter) 高斯滤波(Gaussian Filter) 双边滤波(Bilateral Filter) 方框滤波(Box Filter) S…...
【通俗理解】隐变量的变分分布探索——从公式到应用
【通俗理解】隐变量的变分分布探索——从公式到应用 关键词提炼 #隐变量 #变分分布 #概率模型 #公式推导 #期望最大化 #机器学习 #变分贝叶斯 #隐马尔可夫模型 第一节:隐变量的变分分布的类比与核心概念【尽可能通俗】 隐变量的变分分布就像是一场“捉迷藏”游戏…...
PyTorch 分布式并行计算
0. Abstract 使用 PyTorch 进行多卡训练, 最简单的是 DataParallel, 仅仅添加一两行代码就可以使模型在多张 GPU 上并行地计算. 但它是比较老的方法, 官方推荐使用新的 Distributed Data Parallel, 更加灵活与强大: 1. Distributed Data Parallel (DDP) 从一个简单的非分布…...
[cg] vulkan external_memory
最近在写硬件编码的代码,渲染器渲染出的RT需要给到编码器做硬编,有两种方法能做。 一是通过 map的方式,把显存里的数据读到cpu,拷贝一份cpu data给编码器,但这种方式会有内存拷贝的开销。所以,我们思考是否…...
如何使用Python代码实现给GPU预加热
如何使用Python代码实现给GPU预加热 一、引言二、使用深度学习框架进行预加热2.1 TensorFlow预加热2.2 PyTorch预加热三、使用CUDA进行预加热四、预加热的效果评估与优化五、结论与展望在高性能计算和深度学习领域,GPU(图形处理器)已经成为不可或缺的加速工具。然而,在实际…...
硬件知识 cadence16.6 原理图输出为pdf 网络名下划线偏移 (ORCAD)
1. cadence原理图输出为PDF网络名下划线偏移 生这种情况的原因 1. 设计的原理图图纸大小比正常的 A4图纸大。 2. 打印为PDF 的时候,打印机的设置有问题。 2.cadence原理图输出为 PDF网络名下划线偏移的情况 可以看到上图,网络名往上漂移。 3. 解决办法 …...
ffmpeg视频滤镜:提取缩略图-framestep
滤镜描述 官网地址 > FFmpeg Filters Documentation 这个滤镜会间隔N帧抽取一帧图片,因此这个可以用于设置视频的缩略图。总体上这个滤镜比较简单。 滤镜使用 滤镜参数 framestep AVOptions:step <int> ..FV....... set frame st…...
铭豹扩展坞 USB转网口 突然无法识别解决方法
当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...
AGain DB和倍数增益的关系
我在设置一款索尼CMOS芯片时,Again增益0db变化为6DB,画面的变化只有2倍DN的增益,比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析: 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...
上位机开发过程中的设计模式体会(1):工厂方法模式、单例模式和生成器模式
简介 在我的 QT/C 开发工作中,合理运用设计模式极大地提高了代码的可维护性和可扩展性。本文将分享我在实际项目中应用的三种创造型模式:工厂方法模式、单例模式和生成器模式。 1. 工厂模式 (Factory Pattern) 应用场景 在我的 QT 项目中曾经有一个需…...
CppCon 2015 学习:Time Programming Fundamentals
Civil Time 公历时间 特点: 共 6 个字段: Year(年)Month(月)Day(日)Hour(小时)Minute(分钟)Second(秒) 表示…...
【Ftrace 专栏】Ftrace 参考博文
ftrace、perf、bcc、bpftrace、ply、simple_perf的使用Ftrace 基本用法Linux 利用 ftrace 分析内核调用如何利用ftrace精确跟踪特定进程调度信息使用 ftrace 进行追踪延迟Linux-培训笔记-ftracehttps://www.kernel.org/doc/html/v4.18/trace/events.htmlhttps://blog.csdn.net/…...
Android屏幕刷新率与FPS(Frames Per Second) 120hz
Android屏幕刷新率与FPS(Frames Per Second) 120hz 屏幕刷新率是屏幕每秒钟刷新显示内容的次数,单位是赫兹(Hz)。 60Hz 屏幕:每秒刷新 60 次,每次刷新间隔约 16.67ms 90Hz 屏幕:每秒刷新 90 次,…...
CSS 工具对比:UnoCSS vs Tailwind CSS,谁是你的菜?
在现代前端开发中,Utility-First (功能优先) CSS 框架已经成为主流。其中,Tailwind CSS 无疑是市场的领导者和标杆。然而,一个名为 UnoCSS 的新星正以其惊人的性能和极致的灵活性迅速崛起。 这篇文章将深入探讨这两款工具的核心理念、技术差…...
6.9本日总结
一、英语 复习默写list11list18,订正07年第3篇阅读 二、数学 学习线代第一讲,写15讲课后题 三、408 学习计组第二章,写计组习题 四、总结 明天结束线代第一章和计组第二章 五、明日计划 英语:复习l默写sit12list17&#…...
