Android

Pstree parancs a linuxban

How to use the pstree command: Linux tip

How to use the pstree command: Linux tip

Tartalomjegyzék:

Anonim

Amikor Linux gépen dolgozik, néha meg kell tudnia, hogy mely folyamatok futnak jelenleg. Számos parancs használható információkkal a futó folyamatokról, a ps és a top pedig a leggyakrabban használt., a pstree parancsról fogunk beszélni. Ez hasonló a ps , de a futó folyamatok felsorolása helyett egy fában jeleníti meg őket. A faszerű formátum kényelmesebb módja a folyamathierarchia megjelenítésének, és a kimenetet vizuálisan vonzóbbá teszi.

A pstree parancs használata

A pstree parancs általános szintaxisa a következő:

ps

Legegyszerűbb formájában, amikor bármilyen lehetőség vagy argumentum nélkül pstree , a pstree megjeleníti az összes futó folyamat hierarchikus fa struktúráját:

pstree

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

A fa felső / gyökér eleme az összes rendszerfolyamat szülő folyamata. Ebben a példában a systemd , amely az első folyamat, amely indul.

pstree egyesíti az azonos ágakat oly módon, hogy szögletes zárójelek közé helyezi őket, és egész számmal előtagolja őket, amely az ágak számát jelöli. Ez teszi a kimenetet olvashatóbbá és vizuálisan vonzóbbá.

Az alábbiakban bemutatjuk a szögletes zárójel használatát:

├─2*

ugyanaz, mint:

├─agetty ├─agetty

Az azonos ágak egyesítésének letiltásához használja a -c opciót:

pstree -c

A folyamat szálait a szülő folyamat alatt mutatjuk be, és a folyamat nevével a göndör zárójelek közé helyezzük. Íme egy példa:

├─lxcfs───2*

Használja a -t beállítást a teljes szálnevek megjelenítéséhez. Ha el szeretné rejteni a szálakat, és csak a folyamatokat szeretné megjeleníteni, akkor használja a -T beállítást.

A pstree általában sok olyan kimeneti sort jelenít meg, amelyek nem férnek el a képernyőn. A kimeneti oldal megtekintéséhez, olvassa el a less parancsot:

pstree | less

Ha egy felhasználói nevet adunk meg argumentumként, akkor a pstree csak az adott felhasználó tulajdonában levő folyamatokat jeleníti meg. Például a következő parancs csak azokat a folyamatokat jeleníti meg, amelyeket egy „linuxize” nevű felhasználó indított:

pstree linuxize

Ha a PID argumentumként van megadva, akkor a pstree egy fát jelenít meg, amelynek az adott folyamata a fa gyökere. Íme egy példa:

pstree 1943

sshd───bash───pstree

Az adott folyamat szülőfolyamatainak megjelenítéséhez használja a -s opciót, majd a PID folyamatot:

pstree -s 1943

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

Mutassa a PID-ket és a PGID-ket

Általában a pstree parancs futtatásakor a felhasználó számára legfontosabb információ a folyamat azonosítója. Például, ha ismeri a PID-t, akkor megsemmisítheti a hibás működést.

A -p opció utasítja a pstree hogy mutassa meg a PID- pstree :

pstree -p

A PID-k zárójelben vannak feltüntetve minden egyes folyamat vagy szál után.

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

Alapértelmezés szerint a pstree , ugyanazon szülővel név szerint rendezi a folyamatokat. Az -n opció megmondja a pstree , hogy numerikus, vagyis PID-k szerinti rendezést használjon:

pstree -pn

A folyamatcsoport azonosítója vagy a PGID azonosítója a folyamatcsoport első tagjának az azonosítója. A PGID megtekintéséhez használja a -g opciót:

pstree -g

A PID-k zárójelben is megjelennek minden folyamat vagy szál után.

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

A PID vagy PGID megjelenésekor az egyesítés implicit módon le van tiltva.

A parancssori érvek bemutatása

Néhány programot parancssori argumentumként megadott konfigurációs opciókkal lehet meghívni.

Alapértelmezés szerint a pstree nem jeleníti meg a futó folyamatok parancssori argumentumait. A folyamat elindításának megtekintéséhez használja a parancsot az -a opcióval együtt:

pstree -a

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

kiemelve

pstree lehetővé teszi a folyamatok kiemelését a jobb vizuális megjelenítés érdekében.

A -h opció arra utasítja a pstree hogy emelje ki az aktuális folyamatot és az őseit.

pstree -h

Egy adott folyamat kiemeléséhez használja a -H opciót, majd a folyamat azonosítóját:

pstree -H PID_NUMBER

Ha a kiemelés nem támogatott, akkor a parancs hibával lép ki.

Következtetés

A pstree parancs a futó folyamatokat fa struktúra formájában jeleníti meg.

Az elérhető pstree lehetőségekkel kapcsolatos információkért gépelje be a man pstree a terminálba.

ps terminál