Android

Utos ng Pstree sa linux

How to use the pstree command: Linux tip

How to use the pstree command: Linux tip

Talaan ng mga Nilalaman:

Anonim

Kapag nagtatrabaho sa isang makina ng Linux, kung minsan ay kailangan mong malaman kung anong mga proseso ang kasalukuyang tumatakbo. Mayroong bilang ng mga utos na maaari mong gamitin upang makahanap ng impormasyon tungkol sa mga tumatakbo na proseso, na may ps at top ang pinaka-karaniwang ginagamit., pag-uusapan natin ang tungkol sa utos ng pstree . Ito ay katulad ng ps , ngunit sa halip na ilista ang mga tumatakbo na proseso, ipinapakita ang mga ito sa isang puno. Ang format na tulad ng puno ay isang mas maginhawang paraan upang maipakita ang mga proseso ng hierarchy at ginagawang mas nakakaakit ang output.

Paano Gamitin ang utos ng pstree

Ang pangkalahatang syntax para sa utos ng pstree ay ang mga sumusunod:

ps

Sa pinakasimpleng form kapag hinihiling nang walang anumang pagpipilian o argumento, ang pstree nagpapakita ng isang hierarchical na istraktura ng puno ng lahat ng mga nagpapatakbo na proseso:

pstree

systemd─┬─VBoxService───7* ├─accounts-daemon───2* ├─2* ├─atd ├─cron ├─dbus-daemon ├─irqbalance───{irqbalance} ├─2* ├─lvmetad ├─lxcfs───2* ├─networkd-dispat───{networkd-dispat} ├─nginx───2*…

Ang nangungunang / ugat na item sa puno ay ang proseso ng magulang ng lahat ng mga proseso ng system. Sa halimbawang ito ay systemd , na kung saan ay ang unang proseso na nagsisimula sa boot.

pstree magkatulad na sanga sa pamamagitan ng paglalagay ng mga ito sa pagitan ng mga square bracket at prefixing ang mga ito gamit ang isang integer na kumakatawan sa bilang ng mga sanga. Ginagawa nitong mas madaling mabasa at biswal na nakakaakit ang output.

Sa ibaba ay isang halimbawa na nagpapakita kung paano ginagamit ang mga square bracket:

├─2*

ay katulad ng:

├─agetty ├─agetty

Upang hindi paganahin ang pagsasama ng magkatulad na sanga, gamitin ang pagpipilian na -c :

pstree -c

Ang mga thread ng isang proseso ay ipinapakita sa ilalim ng proseso ng magulang at ipinapakita gamit ang pangalan ng proseso sa loob ng mga kulot na tirante. Narito ang isang halimbawa:

├─lxcfs───2*

Gamitin ang -t pagpipilian upang ipakita ang buong mga pangalan ng mga thread. Kung nais mong itago ang mga thread at ipakita lamang ang mga proseso na gamitin ang pagpipilian na -T .

Karaniwan, ipinapakita ng pstree maraming mga linya ng output na hindi umaangkop sa screen. Upang tingnan ang output ng isang pahina nang sabay-sabay, i-pipe ito sa less utos:

pstree | less

Kung ang isang pangalan ng gumagamit ay bibigyan bilang isang argumento, ipinapakita lamang ng mga proseso ang mga proseso na pag-aari ng gumagamit na iyon. Halimbawa, ang sumusunod na utos ay magpapakita lamang sa mga proseso na sinimulan ng isang gumagamit na nagngangalang "linuxize":

pstree linuxize

Kapag ang PID ay tinukoy bilang isang argumento, ang pstree nagpapakita ng isang puno na may ibinigay na proseso bilang ugat ng puno. Narito ang isang halimbawa:

pstree 1943

sshd───bash───pstree

Upang ipakita ang mga proseso ng magulang ng naibigay na proseso gamitin ang pagpipilian na-sinusundan ng proseso ng PID:

pstree -s 1943

systemd───sshd───sshd───bash───pstree

Ipakita ang mga PID at PGID

Karaniwan, kapag nagpapatakbo ng utos ng pstree , ang pinakamahalagang impormasyon na hinahanap ng gumagamit ay ang proseso ng ID. Halimbawa, ang pag-alam sa PID ay nagbibigay-daan sa iyo upang patayin ang isang malfunctioning na proseso.

Ang opsyon na -p nagtuturo sa pstree upang ipakita ang mga PID:

pstree -p

Ang mga PID ay ipinapakita sa mga panaklong pagkatapos ng bawat proseso o thread.

systemd(1)─┬─VBoxService(955)─┬─{VBoxService}(956) │ ├─{VBoxService}(957) │ ├─{VBoxService}(958) │ ├─{VBoxService}(959) │ ├─{VBoxService}(960) │ ├─{VBoxService}(961) │ └─{VBoxService}(962)…

Bilang default, pstree , ayusin ang mga proseso na may parehong pangalan ng magulang. Ang pagpipilian na pstree sa pag- pstree sa paggamit ng pag-uuri ayon sa numero, ibig sabihin, ayon sa mga PID:

pstree -pn

Ang process group ID o PGIDs ay ang proseso ng ID ng unang miyembro ng proseso ng grupo. Upang tingnan ang mga PGID gumamit ng -g pagpipilian:

pstree -g

Ang mga PID ay ipinapakita din sa mga panaklong pagkatapos ng bawat proseso o thread.

systemd(1)─┬─VBoxService(954)─┬─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ └─{VBoxService}(954)…

Kapag ipinakita ang mga PID o PGID, ang pagsasama ay walang kapansanan.

Ipakita ang Mga Argumento ng Command Line

Ang ilang mga programa ay maaaring ma-invoke sa mga pagpipilian sa pagsasaayos na tinukoy bilang mga argumento ng linya ng command.

Bilang default, hindi ipinakita sa iyo ng pstree ang mga argumento ng command line para sa mga tumatakbo na proseso. Upang makita kung paano nagsimula ang proseso, gamitin ang utos kasama ang isang -a opsyon:

pstree -a

… ├─agetty -o -p -- \\u --keep-baud 115200, 38400, 9600 ttyS0 vt220 ├─agetty -o -p -- \\u --noclear tty1 linux…

Nagtatampok

Pinapayagan ka ng pstree na i-highlight ang mga proseso para sa mas mahusay na representasyon ng visual.

Ang -h opsyon ay nagtuturo sa pag- pstree upang pstree -highlight ang kasalukuyang proseso at lahat ng mga ninuno nito.

pstree -h

Upang i-highlight ang isang tukoy na proseso, gamitin ang pagpipilian -H sinusundan ng proseso ng ID:

pstree -H PID_NUMBER

Kung ang pag-highlight ay hindi suportado, ang utos ay lalabas na may isang error.

Konklusyon

Ipinapakita ng utos ng pstree ang mga tumatakbo na proseso sa anyo ng isang istraktura ng puno.

Para sa impormasyon tungkol sa lahat ng magagamit na mga pagpipilian sa pstree , i-type ang man pstree sa iyong terminal.

ps terminal