pstree命令来自英文词组“display a tree of processes”的缩写,其功能是用于以树状图形式显示进程信息,帮助管理员更好地了解进程间的关系。Linux系统中常用ps命令查看进程状态信息,但是却无法了解进程之间的依赖关系,哪个是父进程,哪个是子进程?这些信息则可通过pstree命令进行查看。
语法格式: pstree [参数]
常用参数:
-a | 显示完整信息 |
-A | 使用ASCII字符绘制树 |
-c | 不使用精简标示法 |
-g | 显示进程组ID |
-G | 使用VT100终端机的列绘图字符 |
-h | 特别标明现在执行的程序 |
-I | 使用长格式显示树状图 |
-n | 依据PID排序上下级进程 |
-s | 显示指定进程的父进程 |
-S | 显示命名空间转换 |
-p | 显示进程号码 |
-u | 显示用户名 |
-U | 使用UTF-8线条绘制字符 |
-V | 显示版本信息 |
-Z | 显示每个进程的安全上下文 |
参考示例
以树状图的形式显示当前系统中全部进程(默认):
[root@linuxcool ~]# pstree systemd-+-ModemManager---2*[{ModemManager}] |-NetworkManager---2*[{NetworkManager}] |-VGAuthService |-accounts-daemon---2*[{accounts-daemon}] |-atd |-auditd-+-sedispatch | `-2*[{auditd}] ………………省略部分输出信息………………
以树状图的形式显示当前系统中全部进程(带有进程号):
[root@linuxcool ~]# pstree -p systemd(1)-+-ModemManager(989)-+-{ModemManager}(1003) | `-{ModemManager}(1010) |-NetworkManager(1082)-+-{NetworkManager}(1091) | `-{NetworkManager}(1095) |-VGAuthService(984) |-accounts-daemon(1047)-+-{accounts-daemon}(1049) | `-{accounts-daemon}(1051) ………………省略部分输出信息………………
以更完整、更丰富的信息样式显示每个进程:
[root@linuxcool ~]# pstree -a systemd --switched-root --system --deserialize 17 ├─ModemManager │ └─2*[{ModemManager}] ├─NetworkManager --no-daemon │ └─2*[{NetworkManager}] ├─VGAuthService -s ├─accounts-daemon │ └─2*[{accounts-daemon}] ├─atd -f ………………省略部分输出信息………………