top
是一个用于显示系统任务和进程实时信息的命令行工具,在 Unix 和 Linux 系统中非常常用。
基本用法
top
启动 top
命令后,默认情况下显示当前系统中所有正在运行的进程,并实时更新。您可以通过交互式键盘命令和选项来控制 top
的显示和行为。
top
命令的输出
top
命令启动后,输出分为三个部分:
- 系统概述:显示系统的总体信息,包括当前时间、系统运行时间、用户数、负载均衡、任务数、CPU 使用情况、内存使用情况等。
- 任务列表:显示所有正在运行的任务和进程的信息,包括 PID、用户、优先级、虚拟内存、常驻内存、CPU 使用率、内存使用率、运行时间、命令等。
常见选项和交互式命令
在 top
运行过程中,您可以使用以下交互式命令来控制其显示和行为:
- 显示帮助
h
显示帮助信息,列出所有交互式命令。
- 退出
top
q
退出 top
命令。
- 排序
o or O
提示输入排序字段,例如按 CPU 使用率排序(按 %CPU
字段):
top -o %CPU
- 更改显示刷新间隔
s
提示输入新的刷新间隔时间(以秒为单位),例如设置为 2 秒:
s2
- 显示或隐藏摘要信息
l
显示或隐藏负载均衡信息。
t
显示或隐藏任务和 CPU 状态信息。
m
显示或隐藏内存状态信息。
- 高亮当前正在运行的进程
z or b
高亮显示当前正在运行的进程。
- 杀死进程
k
提示输入要杀死的进程 ID (PID) 和信号,按 Enter
以确认。
- 更改进程优先级(即重命名)
r
提示输入进程 ID (PID) 和新优先级值(负值表示较高优先级)。
- 过滤进程
o or O
提示输入过滤条件,例如按用户过滤:
u username
- 切换显示模式
c
切换显示完整命令行或仅显示命令名称。
运行 top
时的命令行选项
您也可以在启动 top
时指定选项来控制其行为和显示:
- 设置刷新间隔时间
top -d 2
例子:设置刷新间隔时间为 2 秒。
- 显示特定用户的进程
top -u username
例子:仅显示特定用户的进程。
- 以批处理模式运行
top -b
例子:以批处理模式运行,通常用于脚本中。可以与 -n
选项结合使用指定输出的刷新次数:
top -b -n 1
- 排序
top -o +%CPU
例子:按 CPU 使用率排序。
- 指定显示的列
top -o pid,user,%cpu,%mem,time,command
例子:显示 PID、用户、CPU 使用率、内存使用率、运行时间和命令列。
常见的 top
命令使用示例
- 查看系统所有进程的实时状态
top
- 查看指定用户的进程
top -u username
- 以批处理模式运行,并输出到文件
top -b -n 1 > top_output.txt
- 按内存使用率排序
top -o %MEM
高级用法
- 设置颜色
Z
在交互模式下可以设置颜色显示。
- 显示树形结构
V
显示进程的树形结构,显示进程及其子进程的关系。
- 切换显示模式
f
可以在 top
命令中切换显示字段。