Android

Příkaz Pstree v Linuxu

How to use the pstree command: Linux tip

How to use the pstree command: Linux tip

Obsah:

Anonim

Při práci na počítači se systémem Linux někdy budete možná muset zjistit, jaké procesy jsou aktuálně spuštěny. Existuje mnoho příkazů, které můžete použít k nalezení informací o spuštěných procesech, přičemž nejčastěji používané jsou ps a top ., budeme mluvit o příkazu pstree . Je to podobné ps , ale namísto výpisu spuštěných procesů je zobrazuje ve stromu. Stromový formát je pohodlnější způsob, jak zobrazit hierarchii procesů a zvýšit vizuální přitažlivost výstupu.

Jak používat příkaz pstree

Obecná syntaxe příkazu pstree je následující:

ps

Ve své nejjednodušší podobě, když je vyvolán bez jakékoli možnosti nebo argumentu, pstree zobrazí hierarchickou stromovou strukturu všech běžících procesů:

pstree

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

Horní / kořenová položka ve stromu je nadřazeným procesem všech systémových procesů. V tomto příkladu je to systemd , což je první proces, který začíná nabootovat.

pstree slučuje identické větve jejich umístěním do hranatých závorek a předponou je celým číslem, které představuje počet větví. Díky tomu je výstup čitelnější a vizuálně přitažlivější.

Níže je uveden příklad použití hranatých závorek:

├─2*

je stejné jako:

├─agetty ├─agetty

Chcete-li zakázat slučování identických větví, použijte volbu -c :

pstree -c

Vlákna procesu jsou zobrazena pod nadřazeným procesem a zobrazena pomocí názvu procesu uvnitř složených závorek. Zde je příklad:

├─lxcfs───2*

Použijte volbu -t k zobrazení úplných názvů vláken. Pokud chcete skrýt vlákna a zobrazit pouze procesy, použijte volbu -T .

pstree obvykle zobrazuje mnoho řádků výstupu, které se nevejdou na obrazovku. Chcete-li zobrazit výstup po jedné stránce najednou, posuňte ji na příkaz less :

pstree | less

Pokud je uživatelské jméno uvedeno jako argument, pstree zobrazuje pouze procesy, které daný uživatel vlastní. Například následující příkaz zobrazí pouze ty procesy, které byly spuštěny uživatelem s názvem „linuxize“:

pstree linuxize

Pokud je jako argument zadán PID, pstree zobrazí strom s daným procesem jako kořen stromu. Zde je příklad:

pstree 1943

sshd───bash───pstree

Chcete-li zobrazit nadřazené procesy daného procesu, použijte volbu -s následovanou procesem PID:

pstree -s 1943

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

Zobrazit PID a PGID

Při spuštění příkazu pstree obvykle nejdůležitější informace, kterou uživatel hledá, ID procesu. Například znát PID vám umožní zabít proces selhání.

Volba -p dá pokyn pstree aby zobrazoval PID:

pstree -p

PID jsou zobrazeny v závorkách po každém procesu nebo podprocesu.

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

Ve výchozím nastavení pstree seřadí procesy se stejným rodičem podle názvu. Volba -n říká pstree aby používal číselné řazení, tj. Třídění podle PID:

pstree -pn

ID skupiny procesů nebo PGID je ID procesu prvního člena skupiny procesů. Chcete-li zobrazit PGID, použijte volbu -g :

pstree -g

PID jsou také uvedeny v závorkách po každém procesu nebo podprocesu.

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

Když jsou zobrazeny PID nebo PGID, sloučení je implicitně zakázáno.

Zobrazit argumenty příkazového řádku

Některé programy lze vyvolat s konfiguračními možnostmi zadanými jako argumenty příkazového řádku.

Ve výchozím nastavení vám pstree nezobrazuje argumenty příkazového řádku pro spuštěné procesy. Chcete-li zobrazit, jak byl proces spuštěn, použijte příkaz společně s volbou -a :

pstree -a

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

Zvýraznění

pstree také umožňuje zvýraznit procesy pro lepší vizuální reprezentaci.

Možnost -h dá pokynu pstree aby zvýraznil aktuální proces a všechny jeho předky.

pstree -h

Chcete-li zvýraznit konkrétní proces, použijte volbu -H následovanou ID procesu:

pstree -H PID_NUMBER

Pokud zvýraznění není podporováno, příkaz skončí s chybou.

Závěr

Příkaz pstree zobrazuje spuštěné procesy ve formě stromové struktury.

Informace o všech dostupných možnostech pstree zadejte do svého terminálu man pstree .

ps terminál