使用top和ps命令可按CPU使用率排序进程。1. top命令实时监控,默认按CPU降序,按P重排序,M按内存排序,k结束进程,q退出;2. ps aux --sort=-%cpu静态查看,结合head、tail等命令筛选输出,适合脚本使用;3. 配合watch、管道等工具实现持续监控与高效分析,适用于排查系统性能问题。

在Linux系统中,想要按CPU使用率对进程进行排序,最常用的方法是使用 top 命令和 ps 命令。这两个命令都可以列出系统中的进程,并支持按CPU使用率降序排列,方便快速定位占用资源较高的进程。
1. 使用 top 命令动态查看(实时监控)
top 是一个实时显示系统状态的工具,默认按CPU使用率从高到低排序。
操作方法:- 打开终端,输入:top
- 启动后,你可以看到进程列表,其中“%CPU”列显示每个进程的CPU占用情况
- 如果发现未按CPU排序,可以按下大写 P(Shift + p),即可按CPU使用率重新排序
在 top 界面中,还可以:
- 按 M 按内存使用排序
- 按 k 终止某个进程(需输入PID)
- 按 q 退出 top 界面
2. 使用 ps 命令静态查看(适合脚本或一次性查询)
如果你只需要获取一次性的进程列表,并按CPU使用率排序,推荐使用 ps 命令配合排序选项。
常用命令:ps aux --sort=-%cpu
- ps:显示当前进程快照
- aux:a表示所有用户进程,u表示以用户友好格式显示,x表示包括无终端的进程
- --sort=-%cpu:按CPU使用率降序排列(注意负号“-”表示降序,去掉则为升序)
USER PID %CPU %MEM CMD
root 1234 15.2 0.8 firefox
user1 5678 5.6 1.2 python3 script.py
ps aux --sort=-%cpu | head -11
这样可以连标题一起显示前10个占用最高的进程。
3. 其他实用组合命令
结合其他工具,可以更高效地分析CPU使用情况。
- 查看前5个CPU占用最高的进程:
ps aux --sort=-%cpu | tail -n +2 | head -5 - 用 watch 实时观察排序结果:
watch -n 1 'ps aux --sort=-%cpu | head -10'(每秒刷新一次)










