上一篇
Linux如何查看用户进程?
- Linux
- 2025-06-26
- 6
使用 ps -u 用户名 命令查看指定用户的进程列表,实时监控进程资源占用则用 top -u 用户名, -U 用户名 参数可精确过滤特定用户进程。
核心命令详解
ps 命令(最常用)
作用:静态快照式查看进程信息。
常用组合:
ps -u username # 查看指定用户的所有进程 ps aux | grep username # 过滤特定用户的进程(推荐)
- 参数解析:
- a:显示所有用户的进程
- u:以用户友好格式输出(含CPU/内存占用)
- x:包括未关联终端的进程(如后台服务)
- 示例输出: $ ps -u ubuntu PID TTY TIME CMD 1234 ? 00:00:01 sshd 5678 pts/0 00:00:00 bash
top / htop 命令(动态监控)
作用:实时动态显示进程状态(按CPU或内存排序)。
操作:
top -u username # 监控指定用户的进程 htop -u username # 增强版(需安装:`sudo apt install htop`)
- 功能亮点:
- top 界面中按 u → 输入用户名过滤。
- htop 支持鼠标操作和颜色高亮,更直观。
- 退出:按 q 键。
pgrep 命令(快速检索PID)
作用:根据进程名或用户直接获取进程ID。
示例:

pstree 命令(树状结构展示)
作用:以树形结构展示进程父子关系。
用法:
pstree -p username # 显示用户进程的层级结构
- 输出示例: bash(5678)───vim(7890)───python(8912)
图形化工具(适合桌面环境)
-
GNOME System Monitor
路径:Applications → System Tools → System Monitor
功能:直观查看进程列表、资源占用图表,支持结束进程。

-
KDE KSysGuard
路径:Kicker Menu → System Monitor
功能:类似Windows任务管理器,支持自定义监控项。
-
权限限制:
- 普通用户只能查看自己的进程。
- 查看所有用户进程需root权限: sudo ps aux # 显示系统所有进程 sudo top # 监控全局进程
-
安全实践:

- 敏感进程(如数据库、Web服务)建议用专用账户运行,避免使用root。
- 异常进程排查:结合 netstat 检查网络连接(如 netstat -tulnp | grep PID)。
-
进程管理延伸:
- 结束进程:kill -9 PID 或 pkill -u username process_name
- 后台运行:nohup command &(退出终端仍持续运行)
- 用 ps aux | grep username 快速定位进程。
- 用 htop 实时监控资源。
- 需要深度分析时,结合 pstree 和日志(如 /var/log/syslog)。
应用场景建议
场景 推荐命令 说明 快速检查用户进程 ps -u username 简洁输出基础信息 实时监控资源占用 top -u username 动态跟踪CPU/内存变化 批量操作进程(如结束) pkill -u username 终止用户所有进程 分析进程依赖关系 pstree -p username 定位父进程和子进程
掌握 ps、top、pgrep 等命令可覆盖90%的进程查看需求,日常管理推荐组合使用:
引用说明参考Linux man手册(查看详情:man ps、man top)及Ubuntu官方文档,命令兼容主流Linux发行版(Ubuntu/CentOS/Debian等)。
关键注意事项