天天看點

Linux基礎指令---顯示樹形程序pstree

pstree

        pstree顯示正在運作的程序的樹形結構,樹以PID為根;如果省略了pid則以init為根。如果指定了使用者名,則顯示根植于該使用者擁有的程序的所有程序樹。如果pstree被調用為pstree.x11,那麼它将提示行尾的使用者按RETURE,并且在這種情況發生之前不會傳回。這對于在x終端中運作pstree非常有用。

        pstree通過将相同的分支放在方括号中并以重複計數作為字首,在視覺上合并它們。例如:

init-+-getty

    |-getty

    |-getty

‘-getty

變成下面的樣子

​init---4*[getty]​

        程序的子線程在父程序下找到,并以大括号顯示程序名,例如:

icecast2---13*[{icecast2}]

        此指令的适用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、文法

        pstree [選項]

2、選項清單

選項 說明
-a 顯示每個程序的完整指令,包括路徑、參數
-A 使用ascii碼顯示樹形
-c 關閉精簡表示法
-G 使用VT 100線條繪制字元
-h 高亮顯示正在執行的程式
-H 類似“-h”,但是突出顯示指定的程序。與-h不同,如果高亮顯示不可用,pstree在使用-H時會失敗。
-l 長格式顯示
-n 以程序号排序,預設以名字排序
-p 顯示pid
-u 顯示使用者
-U 以utf-8顯示字元
-V 顯示指令版本資訊
-Z 每個SELinux的上下文

3、執行個體

1)顯示完成的樹形結構

​[root@localhost ~]# pstree -a​

​init​

​  ├─NetworkManager --pid-file=/var/run/NetworkManager/NetworkManager.pid​

​  │   ├─dhclient -d -4 -sf /usr/libexec/nm-dhcp-client.action -pf /var/run/dhclient-eth0.pid ...​

​  │   └─{NetworkManager}​

​  ├─VBoxClient --clipboard​

​  │   └─VBoxClient --clipboard​

2)顯示程序号 

​[root@localhost ~]# pstree -p​

​init(1)─┬─NetworkManager(6362)─┬─dhclient(6377)​

​        │                      └─{NetworkManager}(6379)​

​       ├─VBoxClient(7869)───VBoxClient(7870)───{VBoxClient}(7872)​

​        ├─VBoxClient(7882)───VBoxClient(7883)​

​        ├─VBoxClient(7890)───VBoxClient(7891)───{VBoxClient}(7894)​

​       ├─VBoxClient(7898)───VBoxClient(7899)─┬─{VBoxClient}(7901)​

​        │                                    └─{VBoxClient}(7903)​

​        ├─VBoxClient(7306)───VBoxClient(7308)​

​       ├─VBoxClient(7312)───VBoxClient(7314)───{VBoxClient}(7317)​

​       ├─VBoxClient(7318)───VBoxClient(7320)─┬─{VBoxClient}(7323)​

​        │                                    └─{VBoxClient}(7325)​

繼續閱讀