功能描述
使用pstree命令可以显示正在运行的进程的进程树。pstree命令ASCII 字符显示树状结构,清楚地表达进程之间的相互关系。如果不指定进程号或用户名,那么会把系统启动时的第一个进程看作是基层,并显示之后的所有进程。若指定用户名,便会以属于该用户的第一个进程当作基层,然后显示该用户的所有进程。
命令语 法
pstree [-acGhlnpuUV][-H ][/]
选项含义
选项
含义
-a
显示每个程序的完整指令,包含路径,参数或是常驻服务的标示。
-A
使用ASCII画线符
-c
不使用精简标示法。
-h
列出树状图时,特别标明现在执行的程序。
-H
此参数的效果和指定"-h"参数类似,但特别标明指定的程序。
-G
使用 VT100 终端机的列绘图字符。
-l
采用长列格式显示树状图。
-n
用程序识别码排序。预设是以程序名称来排序。
-p
显示程序识别码。
-u
显示用户名称。
-U
使用 UTF-8 列绘图字符。
-Z
显示SELinux安全环境
示例:
查看进程树
[root@localhost ~]# pstree
列出了当前所有进程的树状图(包括程序名和进程ID)
[root@localhost ~]# pstree -h -p
init(1)─┬─NetworkManager(1180)─┬─dhclient(1230)
│ └─{NetworkManager}(1231)
├─abrtd(1480)
├─acpid(1259)
├─atd(1499)
├─auditd(1087)───{auditd}(1088)
├─automount(1336)─┬─{automount}(1337)
│ ├─{automount}(1338)
│ ├─{automount}(1341)
│ └─{automount}(1344)
├─bonobo-activati(1671)───{bonobo-activat}(1672)
├─certmonger(1511)
├─console-kit-dae(1570)─┬─{console-kit-da}(1571)
│ ├─{console-kit-da}(1572)
│ ├─{console-kit-da}(1573)
│ ├─{console-kit-da}(1574)
│ ├─{console-kit-da}(1575)
│ ├─{console-kit-da}(1576)
│ ├─{console-kit-da}(1577)
│ ├─{console-kit-da}(1578)
│ ├─{console-kit-da}(1579)
│ ├─{console-kit-da}(1580)
│ ├─{console-kit-da}(1581)
│ ├─{console-kit-da}(1582)
│ ├─{console-kit-da}(1583)
│ ├─{console-kit-da}(1584)
│ ├─{console-kit-da}(1585)
│ ├─{console-kit-da}(1586)
│ ├─{console-kit-da}(1587)
│ ├─{console-kit-da}(1588)
│ ├─{console-kit-da}(1589)
│ ├─{console-kit-da}(1590)
│ ├─{console-kit-da}(1591)
│ ├─{console-kit-da}(1592)
│ ├─{console-kit-da}(1593)
│ ├─{console-kit-da}(1594)
│ ├─{console-kit-da}(1595)
│ ├─{console-kit-da}(1596)
│ ├─{console-kit-da}(1597)
│ ├─{console-kit-da}(1598)
│ ├─{console-kit-da}(1599)
│ ├─{console-kit-da}(1600)
│ ├─{console-kit-da}(1601)
│ ├─{console-kit-da}(1602)
│ ├─{console-kit-da}(1603)
│ ├─{console-kit-da}(1604)
│ ├─{console-kit-da}(1605)
│ ├─{console-kit-da}(1606)
│ ├─{console-kit-da}(1607)
│ ├─{console-kit-da}(1608)
│ ├─{console-kit-da}(1609)
│ ├─{console-kit-da}(1610)
│ ├─{console-kit-da}(1611)
│ ├─{console-kit-da}(1612)
│ ├─{console-kit-da}(1613)
│ ├─{console-kit-da}(1614)
│ ├─{console-kit-da}(1615)
│ ├─{console-kit-da}(1616)
│ ├─{console-kit-da}(1617)
│ ├─{console-kit-da}(1618)
│ ├─{console-kit-da}(1619)
│ ├─{console-kit-da}(1620)
│ ├─{console-kit-da}(1621)
│ ├─{console-kit-da}(1622)
│ ├─{console-kit-da}(1623)
│ ├─{console-kit-da}(1624)
│ ├─{console-kit-da}(1625)
│ ├─{console-kit-da}(1626)
│ ├─{console-kit-da}(1627)
│ ├─{console-kit-da}(1628)
│ ├─{console-kit-da}(1629)
│ ├─{console-kit-da}(1630)
│ ├─{console-kit-da}(1631)
│ ├─{console-kit-da}(1632)
│ └─{console-kit-da}(1634)
├─crond(1488)
├─cupsd(1232)
├─dbus-daemon(1641)───{dbus-daemon}(1642)
├─dbus-daemon(1169)───{dbus-daemon}(1172)
├─dbus-launch(1640)
├─devkit-power-da(1646)
├─gconfd-2(1650)
├─gdm-binary(1519)─┬─gdm-simple-slav(1551)─┬─Xorg(1554)
│ │ ├─gdm-session-wo+
│ │ ├─gnome-session(+
│ │ └─{gdm-simple-sl+
│ └─{gdm-binary}(1552)
├─gnome-settings-(1668)───{gnome-settings}(1674)
├─gvfsd(1680)
├─hald(1268)─┬─hald-runner(1269)─┬─hald-addon-acpi(1311)
│ │ └─hald-addon-inpu(1310)
│ └─{hald}(1270)
├─master(1444)─┬─pickup(1460)
│ └─qmgr(1461)
├─mingetty(1524)
├─mingetty(1526)
├─mingetty(1528)
├─mingetty(1534)
├─mingetty(1536)
├─modem-manager(1187)
├─polkitd(1688)
├─pulseaudio(1697)───{pulseaudio}(1703)
├─rpc.statd(1199)
├─rpcbind(1154)
├─rsyslogd(1112)─┬─{rsyslogd}(1113)
│ ├─{rsyslogd}(1115)
│ └─{rsyslogd}(1116)
├─rtkit-daemon(1699)─┬─{rtkit-daemon}(1700)
│ └─{rtkit-daemon}(1701)
├─sshd(1361)───sshd(1675)───bash(1711)───pstree(1774)
├─udevd(423)─┬─udevd(1532)
│ └─udevd(1533)
└─wpa_supplicant(1234)
查看进程号为1083的进程名
[root@localhost ~]# pstree 1083
查看gdm用户的进程
[root@localhost ~]# pstree gdm
注意事项
若指定用户名,pstree命令将把该用户的第一个程序作为树根,然后显示该用户启动的所有程序。
如果不指定程序识别码或用户名,pstree命令将把系统启动时的第一个程序作为树根,并以树状结构显示启动后的所有程序。
对于反复执行的程序,pstree命令显示一