網(wǎng)站建設(shè)新聞中心百度快照客服電話
Linux基礎(chǔ)命令-uname顯示系統(tǒng)內(nèi)核信息
Linux基礎(chǔ)命令-lsof查看進程打開的文件
Linux基礎(chǔ)命令-uptime查看系統(tǒng)負載
文章目錄
前言
一 命令介紹
二 語法及參數(shù)
2.1 使用man查看命令語法
2.2 常用參數(shù)
三 參考實例
3.1 以樹狀圖的形式顯示所有進程
3.2 以樹狀圖顯示進程號
3.3 以完整的樣式顯示進程
3.4 帶有特別標明字體的形式顯示執(zhí)行的程序
3.5 不以精簡的模式顯示進程
總結(jié)
前言
? ? ? ? 前些時間學(xué)習(xí)了ps命令,今天來了解一下這個pstree的命令,既是將進程與子進程的結(jié)構(gòu)以樹狀形式顯示出來,還是比較有意思的,先看下命令的介紹。
一 命令介紹
? ? ? ? pstree命令來自于英文詞組“Process tree”的縮寫,其功能是用于以樹狀圖形式顯示進程信息,幫助管理員更好的了解進程間的關(guān)系。Linux系統(tǒng)中常用ps命令查看進程狀態(tài)信息,但是卻無法了解進程之前的依賴關(guān)系,哪個是父進程,哪個是子進程都可以通過pstree進行查看。
二 語法及參數(shù)
2.1 使用man查看命令語法
語法:pstree 【參數(shù)】
NAMEpstree - display a tree of processesSYNOPSISpstree [-a, --arguments] [-c, --compact] [-h, --highlight-all, -Hpid, --high‐light-pid pid] [-g] --show-pgids] [-l, --long] [-n, --numeric-sort][-N, --ns-sortns [-p, --show-pids] [-s, --show-parents] [-S, --ns-changes][-u, --uid-changes] [-Z, --security-context][-A, --ascii, -G, --vt100, -U, --unicode] [pid, user]pstree -V, --version
2.2 常用參數(shù)
pstree命令能用到的參數(shù)并不需要很多,這個命令有時作為一個了解即可。
-a | 顯示完整信息 |
-c | 不使用精簡標示法 |
-G | 使用VT100終端機的列繪圖字符 |
-h | 特別標明現(xiàn)在執(zhí)行的程序 |
-p | 顯示進程號碼 |
三 參考實例
3.1 以樹狀圖的形式顯示所有進程
[root@localhost ~]# pstree -a | more
systemd --switched-root --system --deserialize 22|-ModemManager| `-2*[{ModemManager}]|-NetworkManager --no-daemon| |-dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-ens32
3.2 以樹狀圖顯示進程號
[root@localhost ~]# ps aux | grep vim
root 5797 0.1 0.1 149588 5192 pts/2 S+ 16:35 0:00 vim 1.txt
root 5808 0.0 0.0 112824 972 pts/0 R+ 16:35 0:00 grep --color=auto vim
[root@localhost ~]# pstree -ap 5797
vim,5797 1.txt
當然也可直接使用pstree -p參數(shù)
[root@localhost ~]# pstree -p | head
systemd(1)-+-ModemManager(742)-+-{ModemManager}(770)| `-{ModemManager}(781)|-NetworkManager(870)-+-dhclient(1002)| |-{NetworkManager}(876)| `-{NetworkManager}(879)|-VGAuthService(715)|-abrt-dbus(5772)-+-{abrt-dbus}(5773)| `-{abrt-dbus}(5775)|-abrt-watch-log(712)|-abrt-watch-log(713)
3.3 以完整的樣式顯示進程
[root@localhost /]# pstree -a |head
systemd --switched-root --system --deserialize 22|-ModemManager| `-2*[{ModemManager}]|-NetworkManager --no-daemon| |-dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-ens32.pid -lf...| `-2*[{NetworkManager}]|-VGAuthService -s|-abrt-watch-log -F BUG: WARNING: at WARNING: CPU: INFO: possible recursive locking detected ernel BUG atlist_del corruption|-abrt-watch-log -F Backtrace /var/log/Xorg.0.log -- /usr/bin/abrt-dump-xorg -xD|-abrtd -d -s
3.4 帶有特別標明字體的形式顯示執(zhí)行的程序
[root@localhost /]# pstree -h
systemd─┬─ModemManager───2*[{ModemManager}]├─NetworkManager─┬─dhclient│ └─2*[{NetworkManager}]├─VGAuthService├─2*[abrt-watch-log]├─abrtd├─accounts-daemon───2*[{accounts-daemon}]├─at-spi-bus-laun─┬─dbus-daemon───{dbus-daemon}
?當前正在執(zhí)行的程序看著會更明顯
3.5 不以精簡的模式顯示進程
加上-c參數(shù),顯示的內(nèi)容對比默認形式的命令,內(nèi)容會顯得更加的詳細。?
[root@localhost /]# pstree -c | head -10
systemd-+-ModemManager-+-{ModemManager}| `-{ModemManager}|-NetworkManager-+-dhclient| |-{NetworkManager}| `-{NetworkManager}|-VGAuthService|-abrt-watch-log|-abrt-watch-log|-abrtd|-accounts-daemon-+-{accounts-daemon}
[root@localhost /]# pstree | head -10
systemd-+-ModemManager---2*[{ModemManager}]|-NetworkManager-+-dhclient| `-2*[{NetworkManager}]|-VGAuthService|-2*[abrt-watch-log]|-abrtd
總結(jié)
? ? ? ? 這個命令實際能用到的機會并不會很多,但可以作為一個命令進行了解,若覺得以上內(nèi)容還行的,可以點贊支持一下!
????????