基本用法
直接在终端输入 top
并回车即可启动该命令。默认情况下,top
会以全屏模式显示系统当前的活动状态,并自动刷新(通常是每3秒更新一次)。
输出解释
top
命令的输出分为两个主要部分:概览区和进程列表区。
概览区
位于屏幕的最上方,提供了关于整个系统的总体信息:
- 第一行:显示当前时间、系统运行时长、当前登录用户数以及系统负载平均值(1分钟、5分钟、15分钟)。
- 第二行:任务(Tasks):显示总进程数、正在运行的进程数、睡眠中的进程数、已停止的进程数和僵尸进程数。
- 第三行:CPU使用情况:
%us
: 用户空间占用CPU百分比。%sy
: 内核空间占用CPU百分比。%ni
: 改变过优先级的进程占用CPU百分比。%id
: 空闲CPU百分比。%wa
: I/O等待占用CPU百分比。%hi
: 硬中断占用百分比。%si
: 软中断占用百分比。%st
: 虚拟机偷取时间(当系统运行于虚拟化环境中)。
- 第四行和第五行:内存和交换分区的状态:
total
: 总量。free
: 空闲量。used
: 已用量。buff/cache
: 缓冲区和缓存用量。
进程列表区
列出所有正在运行的进程,并按CPU使用率降序排列。每一列的信息如下:
- PID: 进程ID。
- USER: 进程所有者的用户名。
- PR: 进程优先级。
- NI: nice值,负值表示高优先级,正值表示低优先级。
- VIRT: 进程使用的虚拟内存总量。
- RES: 进程使用的物理内存总量。
- SHR: 共享内存大小。
- S: 进程状态(D=不可中断的睡眠状态, R=运行, S=睡眠, T=跟踪/停止, Z=僵尸进程)。
- %CPU: 上次更新后CPU时间的使用百分比。
- %MEM: 进程使用的物理内存百分比。
- TIME+: 自进程启动以来所使用的全部CPU时间,精确到百分之一秒。
- COMMAND: 启动进程的命令名。
交互命令
在 top
运行期间,你可以通过按下特定键来执行不同的操作:
- h 或 ?: 显示帮助画面,包含所有可用的命令。
- k: 杀死一个进程。你需要输入想要终止的进程的PID。
- r: 重新设置一个进程的优先级(nice值)。
- s: 更改刷新时间间隔。
- q: 退出程序。
- M: 按内存使用量排序。
- P: 按CPU使用量排序(默认)。
- T: 按累计时间排序。