Linux Command pstree 显示进程树状图

1. 简介

pstree命令 以树状图的方式展现进程之间的派生关系,显示效果比较直观。

2. 参数

-a:显示每个程序的完整指令,包含路径,参数或是常驻服务的标示;
-c:不使用精简标示法;
-G:使用VT100终端机的列绘图字符;
-h:列出树状图时,特别标明现在执行的程序;
-H<程序识别码>:此参数的效果和指定"-h"参数类似,但特别标明指定的程序;
-l:采用长列格式显示树状图;
-n:用程序识别码排序。预设是以程序名称来排序;
-p:显示程序识别码;
-u:显示用户名称;
-U:使用UTF-8列绘图字符;
-V:显示版本信息。
-t: 显示线程

3. 示例

3.1 显示当前所有进程的进程号和进程id

pstree -p

3.2 显示所有进程的所有详细信息

遇到相同的进程名可以压缩显示。

pstree  -a

3.3 特别表明在运行的进程

# pstree -apnh //显示进程间的关系
systemd,1 auto automatic-ubiquity noprompt
  ├─systemd-journal,471
  ├─lvmetad,488 -f
  ├─systemd-udevd,492
  ├─systemd-timesyn,675
  │   └─{systemd-timesyn},702
  ├─VGAuthService,745
  ├─vmtoolsd,746
  │   ├─{vmtoolsd},762
  │   └─{vmtoolsd},775
  ├─systemd-network,826
  ├─systemd-resolve,838
  ├─rsyslogd,902 -n
  │   ├─{rsyslogd},910
  │   ├─{rsyslogd},911
  │   └─{rsyslogd},912

3.4 查看某一个进程的树状图

# -t表示显示线程,-a表示显示命令行参数
$ pstree -t -a -p 27458
mysqld,27458 --log_bin=on --sync_binlog=1
...
  ├─{mysqld},27922
  ├─{mysqld},27923
  └─{mysqld},28014

3.5 获取 SSH 会话的 PID

pstree -p | grep ssh

#  |-sshd(1221)-+-sshd(2768)---bash(2770)-+-grep(2810)
#  |            `-sshd(2807)---sshd(2808)

从上方的输出中,你可以看到 sshd 进程与分支的树形图。sshd 的主进程是 sshd(1221),另两个分支分别为 sshd(2768) 和 sshd(2807)。

Copyright © ghostwritten 浙ICP备2020032454号 2022 all right reserved,powered by Gitbook该文件修订时间: 2022-06-23 16:57:37

results matching ""

    No results matching ""