文章目录
介绍
- 介绍
- 常用选项
- 命令示例
Linux 系统中 pstree 命令的英文全称是“process tree”,即将所有进程以树状图显示,树状图将会以 pid (如果有指定) 或是以 init 这个基本进程为根 (root),如果有指定使用者 id,则树状图会只显示该使用者所拥有的进程。
以树状图的方式展现进程之间的派生关系,显示效果比较直观。
语法格式:pstree [选项]
常用选项 选项说明-a显示每个程序的完整指令,包含路径,参数或是常驻服务的标示-c不使用精简标示法-G使用VT100终端机的列绘图字符-h列出树状图时,特别标明现在执行的程序-H此参数的效果和指定"-h"参数类似,但特别标明指定的程序-l采用长列格式显示树状图-n用程序识别码排序。预设是以程序名称来排序-p显示程序识别码-u显示用户名称-U使用UTF-8列绘图字符-V显示版本信息 命令示例示例 1,按树状形式显示所有进程的名称和进程 ID:
[root@htlwk0001host ~]# pstree -p
systemd(1)─┬─AliYunDun(785225)─┬─{AliYunDun}(785226)
│ ├─{AliYunDun}(785227)
│ ├─{AliYunDun}(785238)
│ ├─{AliYunDun}(785239)
│ ├─{AliYunDun}(785240)
│ ├─{AliYunDun}(785241)
│ ├─{AliYunDun}(785242)
│ ├─{AliYunDun}(785243)
│ ├─{AliYunDun}(785244)
│ ├─{AliYunDun}(785245)
│ ├─{AliYunDun}(785246)
│ ├─{AliYunDun}(785247)
│ ├─{AliYunDun}(785248)
│ ├─{AliYunDun}(785249)
│ ├─{AliYunDun}(785250)
│ ├─{AliYunDun}(785251)
│ ├─{AliYunDun}(785253)
│ ├─{AliYunDun}(785254)
│ ├─{AliYunDun}(785255)
│ ├─{AliYunDun}(785256)
│ ├─{AliYunDun}(785257)
│ ├─{AliYunDun}(785258)
│ ├─{AliYunDun}(827743)
│ └─{AliYunDun}(828521)
├─AliYunDunUpdate(562631)─┬─{AliYunDunUpdate}(562632)
│ ├─{AliYunDunUpdate}(562633)
│ └─{AliYunDunUpdate}(562637)
示例 2,按树状形式来显示所有进程的详细信息,且遇到相同的进程名可以压缩显示:
[root@htlwk0001host ~]# pstree -a
systemd --switched-root --system --deserialize 17
├─AliYunDun
│ └─24*[{AliYunDun}]
├─AliYunDunUpdate
│ └─3*[{AliYunDunUpdate}]
├─NetworkManager --no-daemon
│ └─2*[{NetworkManager}]
├─agetty -o -p -- \\u --keep-baud 115200,38400,9600 ttyS0 vt220
├─agetty -o -p -- \\u --noclear tty6 linux
├─agetty -o -p -- \\u --noclear tty5 linux
示例 3,获取 SSH 会话的 PID:
[root@htlwk0001host ~]# pstree -p | grep ssh
|-sshd(593456)-+-sshd(828662)---sshd(828664)---bash(828665)-+-grep(829080)
| `-sshd(828752)---sshd(828754)---sftp-server(828755)
[root@htlwk0001host ~]#