Linux pstree命令将所有行程以树状图显示,树状图将会以 pid (如果有指定) 或是以 init 这个基本行程为根 (root),如果有指定使用者 id,则树状图会只显示该使用者所拥有的行程。
1、在 Mac OS上
brew install pstree
2、在 Fedora/Red Hat/CentOS
yum -y install psmisc
3、在 Ubuntu/Debian
apt-get install psmisc
pstree [-a] [-c] [-h|-Hpid] [-l] [-n] [-p] [-u] [-G|-U] [pid|user]
-a:显示每个程序的完整指令,包含路径,参数或是常驻服务的标示; -c:不使用精简标示法; -G:使用VT100终端机的列绘图字符; -h:列出树状图时,特别标明现在执行的程序; -H<程序识别码>:此参数的效果和指定"-h"参数类似,但特别标明指定的程序; -l:采用长列格式显示树状图; -n:用程序识别码排序。预设是以程序名称来排序; -p:显示程序识别码; -u:显示用户名称; -U:使用UTF-8列绘图字符; -V:显示版本信息。
显示当前所有进程的进程号和进程id
pstree -p
显示所有进程的所有详细信息,遇到相同的进程名可以压缩显示。
pstree -a
特别表明在运行的进程
pstree -apnh //显示进程间的关系
同时显示用户名称
pstree -u //显示用户名称
获取 SSH 会话的 PID
从上方的输出中,你可以看到 sshd 进程与分支的树形图。sshd 的主进程是 sshd(934),另两个分支分别为 sshd(2926) 和 sshd(2937)。