2021-08-12
1.命令简介
pstree (display a tree of processes) 命令用于查看进程树之间的关系,即哪个进程是父进程,哪个是子进程,可以直观地看出是谁创建了谁。
Linux 系统中进程之间的关系就是一棵树,树的根就是进程 PID 为 1 的 init 进程。
# 参数 -A 各进程树之间的连接以 ASCII 码字符来连接 -U 各进程树之间的连接以 utf8 字符来连接,某些终端可能会有错误 -p 同时列出每个进程的 PID -u 同时列出每个进程的所属账号名称
2. 例子
# 以树状图只显示进程的名字,且相同进程合并显示
pstree
# 以树状图显示进程同时还显示每个进程的 PID
pstree -p
# 同时显示每个进程所属的用户和每个进程的 PID pstree -up
从图中可以看到所有的进程都是依附在 systemd 这个进程下面,它的进程 PID 是 1,因为它是由 Linux 内核主动调用的一个进程。
java 进程所属的用户为 tomcat ,进程的 pid 为 1443。并且这个进程有 23 个子进程,pid 从 1444 顺序排列到 1468。
# 以树状图显示进程,相同名称的进程不合并显示,并且会显示命令行参数,如果有 -p 参数则同时显示每个进程的PID pstree -a
# 因为 pstree 输出的信息可能比较多,所以最好与 more/less 配合使用,使用上下箭头查看,按 q 退出 pstree -ap | less