使用ps命令可查看进程所属用户,ps -u alice显示alice的所有进程,ps aux -u bob显示bob的详细进程信息,支持按CPU排序或统计内存使用,结合多用户过滤和排序功能便于运维排查。
在linux中查看进程所属用户,ps 命令是最常用工具之一。通过结合 -u 选项和其他过滤方式,可以快速定位特定用户的进程。下面介绍几种实用方法。
使用 ps -u 查看指定用户的进程
-u 选项用于按用户过滤进程,支持用户名或用户ID。
示例:
- ps -u alice —— 显示用户 alice 的所有进程
- ps -u 1001 —— 显示 UID 为 1001 的用户进程
该命令默认输出简洁格式,包含 PID、TTY、TIME 和 CMD 字段。
结合 aux 显示完整信息
更常用的组合是 ps aux,它列出系统中所有进程的详细信息。再配合 -u 过滤,可精准查找。
示例:
- ps aux -u bob —— 显示 bob 用户的所有进程,包含CPU、内存等信息
- ps aux | grep bob —— 用管道过滤,也能达到类似效果,但可能包含 grep 自身进程
注意:ps aux -u bob 比管道更准确,避免误匹配无关行。
同时过滤多个用户
ps 支持一次性查看多个用户的进程,用逗号分隔用户名。
示例:
- ps aux -u alice,bob —— 显示 alice 和 bob 的所有进程
- ps -u 1001,1002 —— 按 UID 过滤多个用户
按用户排序或进一步处理
结合其他工具可提升效率。例如用 sort 按CPU使用率排序:
示例:
- ps aux -u alice –sort=-%cpu —— 按CPU降序排列 alice 的进程
- ps aux -u bob | awk ‘{sum+=$4} END {print sum}’ —— 统计 bob 所有进程的内存使用总和
基本上就这些。掌握 ps -u 和 ps aux -u 的用法,能快速定位用户级进程,排查资源占用或权限问题。灵活结合排序和文本处理,可满足多数运维需求。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END