在 Linux 系统中,我们有时候需要知道各进程之间的派生关系,这时候就需要用到 pstree 命令。但是,有很多小伙伴对这个命令不熟悉,不知道 Linux 怎么查看进程树,电脑笔记网接下来就给小伙伴们分享 Linux 下 pstree 命令查看进程树详细教程,希望能够对大家有所帮助。
Linux 下 pstree 命令查看进程树详细教程
首先,我们先看看 pstree 命令畅言的选项及其意义。
-a 显示启动每个进程对应的完整指令,包括启动进程的路径、参数等。
-c 不使用精简法显示进程信息,即显示的进程中包含子进程和父进程。
-n 根据进程 PID 号来排序输出,默认是以程序名排序输出的。
-p 显示进程的 PID。
-u 显示进程对应的用户名称。
需要提醒小伙伴们的是,在使用 pstree 命令时,如果不指定进程的 PID 号,也不指定用户名称,则会以 init 进程为根进程,显示系统中所有程序和进程的信息;反之,若指定 PID 号或用户名,则将以 PID 或指定命令为根进程,显示 PID 或用户对应的所有程序和进程。
init 进程是系统启动的第一个进程,进程的 PID 是 1,也是系统中所有进程的父进程。
pstree 命令查看进程树示例 1:
[root@1ocalhost ~]# pstree
init──┬──abrc-dump-oopa
├──abrtd
├──acpid
...省略部分输出...
├──rayslogd───3*[{rsyslogrd}]
#有3个rsyslogd进程存在
├──sshd───sshd───bash───pstree
#Pstree命令进程是在远程连接中被执行的
├──udevd───2*[udevd]
└──xinecd
pstree 命令查看进程树示例 2:
如果想知道某个用户都启动了哪些进程,使用 pstree 命令可以很容易实现,以 mysql 用户为例:
[root@1ocalhost ~]# pstree mysql
mysqid---6*[{mysqid}]
上面的输出结果显示了 mysql 用户对应的进程为 mysqid,并且 mysqid 进程拥有 5 个子进程,外加 1 个父进程,共计 6 个进程。以上这些内容就是 Linux 下 pstree 命令查看进程树详细教程,是不是用起来也不那么难呢,对 Linux 有兴趣的小伙伴可以对照教程学起来了。