Linux查看进程树pstree命令用法 Linux
前言
排查服务异常时,常需要看清进程之间的父子关系:谁启动了谁、哪个守护进程拉起了子进程。ps 是平铺列表,pstree 用树形展示进程继承关系,一眼看出从属。本文讲解 pstree 基本用法、按 PID 定位、显示命令行和父子关系排查。
操作步骤
1. 查看整棵进程树
pstree
2. 显示进程 PID
pstree -p
每个进程后带 PID,方便对照 kill。
3. 显示完整命令行参数
pstree -a
4. 从某个进程向下看子树
pstree -p <PID>
5. 合并重复分支,只看进程名
pstree -c
6. 配合 ps 找目标进程 PID
ps aux | grep nginx
再用 pstree -p
7. 查看某用户的进程树
pstree -u root
常见坑
- pstree 默认折叠同名进程,看不到具体子进程时加 -c。
- -p 显示 PID,管理 kill 时才需要,纯看结构可省。
- 容器内看到的进程树是命名空间内的,和宿主机不同。
- 僵尸进程在树里用
标注,需要找父进程处理。 - -a 显示完整参数,敏感命令行可能含密码,注意输出。
- 进程名相同但 PID 不同,别靠名字直接 kill。
- pstree 适合看关系,资源占用仍用 ps/top。
总结
pstree 用树形展示父子进程,-p 带 PID、-a 带命令行、-c 展开折叠。排查服务拉起链、僵尸进程归属时比 ps 更直观。先 ps 找到 PID,再 pstree -p 顺藤摸瓜定位父进程。
遇到问题加QQ23979811 协助处理