top 的增强版:htop

top

top 是 Linux 下一个常用命令,用来监视系统的运行状况,类似于 Windows 的任务管理器,下图是 top 命令的运行界面:

top

top 的运行结果可以大致分为 7 个部分:

  • 第 1 行显示了系统概况
  • 第 2 行显示了进程概况
  • 第 3 行显示了 CPU 概况
  • 第 4 行显示了内存概况
  • 第 5 行显示了 Swap 分区概况
  • 第 6 行为空行,用以显示运行命令时输入的参数
  • 剩下部分则为每个进程的详细信息

第 1 行

字符 含义
top - 系统概况
18:37:24 当前系统时间
up 130 days, 6:22, 系统已运行时间
1 user, 当前登录用户数
load average: 0.02, 0.04, 0.00 系统平均负载,三个数值分别为 1 分钟、5 分钟、15 分钟前到现在的平均值。

第 2 行

字符 含义
Tasks: 进程(任务)概况
23 total, 总进程数
1 running, 运行的进程数
22 sleeping, 睡眠的进程数
0 stopped, 停止的进程数
0 zombie 僵尸进程数

第 3 行

字符 含义
Cpu(s): CPU 概况
3.7%us, 用户(user)进程占用 CPU 百分率
0.7%sy, 系统(system)进程占用 CPU 百分率
0.0%ni, 用户进程空间内改变过优先级(niced)的进程占用 CPU 百分比
95.7%id, CPU 空闲(idle)率
0.0%wa, 等待(wait)IO 的 CPU 时间百分比
0.0%hi, 硬中断(hardware interrupt)占用 CPU 的百分比
0.0%si, 软中断(software interrupt)占用 CPU 的百分比
0.0%st todo

第 4 行

字符 含义
Mem: 内存(memory)概况,数值以 kb 为单位
524288k total, 内存总量
278140k used, 内存使用量
246148k free, 内存空闲量
0k buffers 缓冲的内存量

第 5 行

字符 含义
Swap: Swap 分区概况,数值以 kb 为单位
65536k total, Swap 分区总量
65536k used, Swap 分区使用量
0k free, Swap 分区空闲量
28800k cached 缓冲的 Swap 分区量

剩下部分

字符 含义
PID 进程号
USER 进程创建者
PR 进程优先级
NI nice 值。越小优先级越高,最小 -20,最大 20(用户设置最大 19)
VIRT 进程使用的虚拟(virtual)内存总量,单位 kb。VIRT=SWAP+RES
RES 进程使用的、未被换出的物理内存大小,单位 kb。RES=CODE+DATA
SHR 共享(share)内存大小,单位 kb
S 进程状态。D=不可中断的睡眠状态,R=运行态,S=睡眠态,T=跟踪/停止态,Z=僵尸态
%CPU 进程占用 CPU 百分比
%MEM 进程占用内存百分比
TIME+ 进程运行时间
COMMAND 运行进程时所使用的命令

命令

top 命令运行界面也可以输入相关命令,具体如下:

  • q:退出 top 运行界面
  • P:以占据 CPU 百分比排序
  • M:以占据内存百分比排序
  • T:以累积占用 CPU 时间排序
  • s:修改刷新时间间隔,默认每隔 3 秒刷新信息。按下 s 键,然后按下数字,即可修改刷新时间间隔为你输入的数字,单位为秒。例如:按下 s 键,在按数字 1 键,即可实现每秒刷新一次
  • 回车或空格:手动立即刷新
  • k:终止指定的进程。按下 k 键,再输入要杀死的进程的 pid,再按回车键,选择信号类型,以数字标示,默认 15 为杀死,本步可省略直接按回车键(常用为 -9)
  • h:显示可输入的命令帮助菜单

htop

htop 是一款第三方的命令行工具,它可以被视为是 top 的增强版,在 Ubuntu 下可使用 apt install htop 命令安装,下图是 htop 命令的运行界面:

htop

当了解了 top 运行界面的各种参数的含义后,htop 运行界面就变得不言而喻了,下面简要介绍一下可以在 htop 运行界面执行的相关命令:

优势

综上所述,htop 相比 top 有以下优势:

  • 彩色标识 CPU、内存、Swap 分区
  • CPU、内存、Swap 分区使用情况直观易懂
  • 底部有命令提示
  • 支持方向键选择进程