图引自:htop.dev/
htop 是一个类似于 top 的命令,但具有更丰富的功能和更友好的界面。它可以实时显示系统中各个进程的资源占用情况,如 CPU 使用率、内存使用率等。以下是对 htop 命令的完全解析:
当你运行 htop 命令时,你会看到如下的输出:
1 [||||||| 10.0%] Tasks: 30, 60 thr; 2 running
2 [|||||||| 12.0%] Load average: 0.29 0.33 0.47
3 [||||||| 10.0%] Uptime: 01:23:45
4 [||||||||| 15.0%]
Mem[||||||||||||||||||||||||||||| 1834/7980MB]
Swp[ 0/0MB]
PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ Command
1 root 20 0 225848 9480 6812 S 0.0 0.5 00:02.03 /sbin/init
2 root 20 0 0 0 0 S 0.0 0.0 00:00.01 [kthreadd]
3 root 20 0 0 0 0 S 0.0 0.0 00:00.50 [ksoftirqd/0]
...
接下来,我们逐行解析 htop 命令的输出:
第一行:
-
1,2,3,4:表示 CPU 核心的编号(如果有多个核心的话)。 -
[||||||| 10.0%]:每个 CPU 核心的使用率。这是一个图形化的进度条,表示 CPU 使用情况。 在这个示例中,CPU1 使用率为 10.0%。
第二行:
-
Tasks: 30, 60 thr; 2 running:显示进程和线程的数量。这里有 30 个进程,60 个线程,其中 2 个进程正在运行。 -
Load average: 0.29 0.33 0.47:系统平均负载(过去 1 分钟、5 分钟、15 分钟的平均值)。 -
Uptime: 01:23:45:系统已运行时间。
第三行:
-
Mem[||||||||||||||||||||||||||||| 1834/7980MB]: 内存使用情况。这是一个图形化的进度条,表示内存使用情况。在这个示例中,已使用 1834MB,总内存为 7980MB。 -
Swp[ 0/0MB]:交换分区使用情况。这是一个图形化的进度条,表示交换分区使用情况。在这个示例中,没有配置交换分区。
接下来的每一行表示一个进程的信息:
-
PID:进程 ID。 -
USER:进程的所有者。 -
PRI:进程优先级(越小表示优先级越高)。 -
NI:进程的 nice 值(-20 到 19,越低表示优先级越高)。 -
VIRT:进程使用的虚拟内存总量(KiB)。 -
RES:进程使用的物理内存(resident set size,KiB)。 -
SHR:进程使用的共享内存(KiB)。 -
S:进程状态(R:运行,S:休眠,T:跟踪/停止,Z:僵尸)。 -
CPU%:进程占用的 CPU 使用率。 -
MEM%:进程占用的物理内存百分比。 -
TIME+:进程使用的累计 CPU 时间(小时:分钟:秒)。 -
Command:进程启动命令名称。
在 htop 命令的交互式界面中,你可以使用以下按键来执行操作:
-
F1或h或?:显示帮助。 -
q或F10:退出htop。 -
F2或S:设置界面,可以配置显示选项、颜色等。 -
F3或/:搜索进程。 -
F4或\:根据用户过滤进程。 -
F5或t:切换树状显示模式。 -
F6或<或>:选择排序方式。 -
F7或[: 降低选中进程的优先级(增加 nice 值)。 -
F8或]: 提高选中进程的优先级(减小 nice 值)。 -
F9或k:杀死选中的进程。 -
Space: 标记/取消标记选中的进程。 -
u:清除所有已标记的进程。
附录
本文使用 文章同步助手 同步