pstree命令详解

基础命令学习目录首页

pstree命令是用于查看进程树之间的关系,即哪个进程是父进程,哪个是子进程,可以清楚的看出来是谁创建了谁
#pstree
几个重要的参数:
-A: 各进程树之间的连接以ASCII码字符来连接
-U:各进程树之间的连接以utf8字符来连接,某些终端可能会有错误
-p:同时列出每个进程的PID
-u: 同时列出每个进程的所属账号名称:
例子:
#pstree  -up

systemd(1)-+-agetty(2021)           |-agetty(2022)           |-bash(23254,ffy)           |-chronyd(1180,chrony)           |-crond(1277)---crond(25734)---sogou-agent(25736)---sleep(25759)           |-dbus-daemon(1123,dbus)                      |-python(25707,dlj)-+-python(25778)-+-{python}(25781)           |                   |               |-{python}(25783)           |                   |               |-{python}(25784)           |                   |               |-{python}(27547)           |                   |               `-{python}(27548)           |                   |-python(25779)-+-{python}(25785)           |                   |               |-{python}(25786)           |                   |               `-{python}(25788)           |                   |-python(25780)-+-{python}(27549)           |                   |               |-{python}(27550)           |                   |               |-{python}(27551)           |                   |               |-{python}(27552)           |                   |               |-{python}(27553)           |                   |               |-{python}(27554)           |                   |               `-{python}(27555)           |                   |-python(25782)-+-{python}(29319)           |                   |               |-{python}(29320)           |                   |               |-{python}(29321)           |                   |               |-{python}(29322)           |                   |               |-{python}(29323)           |                   |               |-{python}(29324)           |                   |               `-{python}(29325)           |                   `-python(25787)


可以看到所有的进程都是依附在systemd这个进程下面,它的进程PID是1,因为它是由Linux内核主动调用的一个进程。

可以从中看出来进程所属的用户为dlj,每个进程的pid
而且,25707这个进程有5个子进程,分别为25778,25779,25780,25782,25787
25778这个进程也有几个子线程,分别为,25781,25783,25784,27547,27548
---------------------
作者:田野上的希望
来源:CSDN
原文:https://blog.csdn.net/u011734144/article/details/77567398
版权声明:本文为博主原创文章,转载请附上博文链接!

pstree命令以树状图显示进程间的关系(display a tree of processes)。ps命令可以显示当前正在运行的那些进程的信息,但是对于它们之间的关系却显示得不够清晰。在Linux系统中,系统调用fork可以创建子进程,通过子shell也可以创建子进程,Linux系统中进程之间的关系天生就是一棵树,树的根就是进程PID为1的init进程。
以树状图只显示进程的名字,且相同进程合并显示:
格式:pstree
[root@localhost ~]# pstree
init─┬─2*[.sshd───{.sshd}]
     ├─NetworkManager
     ├─abrtd
     ├─acpid
     ├─atd
     ├─auditd───{auditd}
     ├─automount───4*[{automount}]
     ├─bonobo-activati───{bonobo-activat}
     ├─certmonger
     ├─console-kit-dae───63*[{console-kit-da}]
     ├─crond
     ├─cupsd
     ├─2*[dbus-daemon]
     ├─dbus-launch
     ├─devkit-power-da
     ├─2*[f62───8*[{f62}]]
     ├─gconfd-2
     ├─gdm-binary─┬─gdm-simple-slav─┬─Xorg
     │            │                 ├─gdm-session-wor
     │            │                 ├─gnome-session─┬─at-spi-registry
     │            │                 │               ├─gdm-simple-gree
     │            │                 │               ├─gnome-power-man
     │            │                 │               ├─metacity
     │            │                 │               ├─polkit-gnome-au
     │            │                 │               └─{gnome-session}
     │            │                 └─{gdm-simple-sla}
     │            └─{gdm-binary}
     ├─gnome-settings-───{gnome-settings}
     ├─gvfsd
     ├─hald─┬─hald-runner─┬─hald-addon-acpi
     │      │             └─hald-addon-inpu
     │      └─{hald}
     ├─irqbalance
     ├─memcached───5*[{memcached}]
     ├─5*[mingetty]
     ├─modem-manager
     ├─mysqld_safe───mysqld───22*[{mysqld}]
     ├─nginx───4*[nginx]
     ├─pcscd───{pcscd}
     ├─php-fpm───4*[php-fpm]
     ├─polkitd
     ├─portreserve
     ├─pulseaudio───3*[{pulseaudio}]
     ├─redis-server───2*[{redis-server}]
     ├─rpc.statd
     ├─rpcbind
     ├─rsyslogd───3*[{rsyslogd}]
     ├─rtkit-daemon───2*[{rtkit-daemon}]
     ├─2*[sendmail]
     ├─sshd───sshd───bash───pstree
     ├─svnserve
     ├─szovajrhbf───3*[{szovajrhbf}]
     ├─udevd───2*[udevd]
     ├─5*[wjbdddweva]
     ├─wpa_supplicant
     └─xinetd
[root@localhost ~]#
以树状图显示进程同时还显示PID:
格式:pstree -p
以树状图显示进程PID为<pid>的进程以及子孙进程,如果有-p参数则同时显示每个进程的PID:
格式:pstree [-p] <pid>
[root@localhost ~]# pstree 2500
mysqld_safe───mysqld───22*[{mysqld}]
[root@localhost ~]# pstree -p 2500
mysqld_safe(2500)───mysqld(2972)─┬─{mysqld}(3062)
                                 ├─{mysqld}(3063)
                                 ├─{mysqld}(3064)
                                 ├─{mysqld}(3065)
                                 ├─{mysqld}(3066)
                                 ├─{mysqld}(3067)
                                 ├─{mysqld}(3068)
                                 ├─{mysqld}(3069)
                                 ├─{mysqld}(3070)
                                 ├─{mysqld}(3071)
                                 ├─{mysqld}(3082)
                                 ├─{mysqld}(3083)
                                 ├─{mysqld}(3084)
                                 ├─{mysqld}(3085)
                                 ├─{mysqld}(3173)
                                 ├─{mysqld}(10962)
                                 ├─{mysqld}(13819)
                                 ├─{mysqld}(28967)
                                 ├─{mysqld}(14425)
                                 ├─{mysqld}(20321)
                                 ├─{mysqld}(20429)
                                 └─{mysqld}(20755)
[root@localhost ~]#
以树状图显示进程,相同名称的进程不合并显示,并且会显示命令行参数,如果有-p参数则同时显示每个进程的PID。
格式:pstree -a
注:因为pstree输出的信息可能比较多,所以最好与more/less配合使用,使用上下箭头查看,按q退出。
[root@localhost ~]# pstree -p | less
---------------------
作者:循序渐进0010
来源:CSDN
原文:https://blog.csdn.net/u011341352/article/details/53044871
版权声明:本文为博主原创文章,转载请附上博文链接!

原文地址:https://www.cnblogs.com/machangwei-8/p/10391961.html

时间: 2024-10-18 06:14:38

pstree命令详解的相关文章

(转)Linux下PS命令详解

(转)Linux下PS命令详解 整理自:http://blog.chinaunix.net/space.php?uid=20564848&do=blog&id=74654 要对系统中进程进行监测控制,查看状态,内存,CPU的使用情况,使用命令:/bin/ps (1) ps :是显示瞬间进程的状态,并不动态连续: (2) top:如果想对进程运行时间监控,应该用 top 命令: (3) kill 用于杀死进程或者给进程发送信号: (4) 查看文章最后的man手册,可以查看ps的每项输出的含义

文件管理命令详解

Linux03 Linux03_01?文件管理命令详解 作业1: 1.创建目录/backup # mkdir -v /backup 2.复制目录/etc至/backup目录中,并重命名为"etc-当前日期",如etc-2013-02-26:要求保留文件原来的属性,保持链接文件: cp -r -p -d # cp -a /etc /backup/etc-2013-02-28 命令替换 3.复制文件/etc/inittab为/tmp/inittab.new,并删除inittab.new文件

Linux系统进程管理命令详解

Linux管理进程的最好方法就是使用命令行下的系统命令.Linux下面的进程涉及的命令有at, bg, fg, kill, crontab, jobs, ps, pstree, top, nice, renice, sleep, nohup. 1.at命令:定时运行命令 作用:at命令在指定时刻执行指定的命令序列. 格式: at [-V] [-q x] [-f file] [-m] time atq [-V] [-q x] atrm [-V] [-q x] job- batch [-V] [-f

jar打包命令详解

:如何把 java 程序编译成 .exe 文件.通常回答只有两种,一种是说,制作一个可执行的 JAR 文件包,就可以像.chm 文档一样双击运行了:而另一种回答,则是使用 JET 来进行编译.但是 JET 是要用钱买的,而且,据说 JET 也不是能把所有的 Java 程序都编译成执行文件,性能也要打些折扣.所以,使用制作可执行 JAR 文件包的方法就是最佳选择了,何况它还能保持 Java 的跨平台特性.先来看看什么是 JAR 文件包: 1. JAR 文件包 JAR 文件就是 Java Archi

Linux压缩与解压缩命令详解

简介:常用的压缩命令有gzip.bzip2.tar 提示:gzip与bzip2工具不可以对目录做打包压缩操作,gzip与bzip2解压都是用-d参数(decompress=uncompress) tar命令详解: 用法:tar 模式 [选项][路径]... 模式:    -c 创建打包文件 -delete -r --append -t --list内容 -x --extract 选项:    -C --directory -f 打包后的文件名称 -j bzip格式压缩 --remove-file

Linux上的free命令详解

Linux上的free命令详解 转自: http://www.cnblogs.com/coldplayerest/archive/2010/02/20/1669949.html 解释一下Linux上free命令的输出. 下面是free的运行结果,一共有4行.为了方便说明,我加上了列号.这样可以把free的输出看成一个二维数组FO(Free Output).例如: FO[2][1] = 24677460 FO[3][2] = 10321516 1          2          3    

Find命令详解

find命令详解 格式 find pathname -options [ -print -exec -ok ... ] 功能 在磁盘中查找文件,并作相应处理 参数 pathname         所查找的目录,可以是相对/绝对路径 options -print 将结果输出到标准输出 -exec 'command' {} \; 对结果执行该参数所给的shell命令 -ok 与-exec作用相同,不过需要用户确认是否执行命令 -name 按照文件名查找 -perm [+-]mode 按照文件权限查

iftop命令命令详解

iftop命令命令详解 作者:尹正杰 在Linux命令中有很多内置命令,和外置命令,但是内部命令的功能毕竟是有限的,比如ifconfig,它就不能看到网卡流量的 实时发送情况,尽管咱们知道可以用watch命令去查看网卡的发送接收流量的情况,但是还是不够细致,因为它仅仅能看到我们的 接受和发送的总流量,因此,我们今天来介绍一个比较好使的实施查看网络流量信息的软件---iftop,其实他的工作模式和top很像. 废话不多说~让我们直接进入正题吧: 1.想必大家都会在linux命令行上敲击ifconf

linux yum命令详解

yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载.安装.yum提供了查找.安装.删除某一个.一组甚至全部软件包的命令,而且命令简洁而又好记. yum的命令形式一般是如下:yum [options] [command] [package ...]其中的[opti