How to use the pstree command: Linux tip
Inhoudsopgave:
- Hoe het
pstreecommando te gebruiken - Toon PID's en PGID's
- Toon opdrachtregelargumenten
- De markering
- Conclusie
Wanneer u op een Linux-machine werkt, moet u soms achterhalen welke processen momenteel worden uitgevoerd. Er zijn een aantal opdrachten die u kunt gebruiken om informatie te vinden over de lopende processen, waarbij
ps
en
top
de meest gebruikte zijn., we zullen het hebben over het
pstree
commando. Het is vergelijkbaar met
ps
, maar in plaats van de actieve processen te vermelden, worden deze in een boomstructuur weergegeven. Het boomachtige formaat is een gemakkelijkere manier om de proceshiërarchie weer te geven en maakt de uitvoer visueel aantrekkelijker.
Hoe het
pstree
commando te gebruiken
De algemene syntaxis voor de opdracht
pstree
is als volgt:
ps
In zijn eenvoudigste vorm toont
pstree
een hiërarchische boomstructuur van alle actieve processen wanneer deze wordt opgeroepen zonder enige optie of argument:
pstree
systemd─┬─VBoxService───7* ├─accounts-daemon───2* ├─2* ├─atd ├─cron ├─dbus-daemon ├─irqbalance───{irqbalance} ├─2* ├─lvmetad ├─lxcfs───2* ├─networkd-dispat───{networkd-dispat} ├─nginx───2*…
Het bovenste / root-item in de structuur is het bovenliggende proces van alle systeemprocessen. In dit voorbeeld is dat
systemd
, wat het eerste proces is dat start bij het opstarten.
pstree
voegt identieke takken samen door ze tussen vierkante haken te plaatsen en ze te prefixen met een geheel getal dat het aantal takken vertegenwoordigt. Dit maakt de uitvoer leesbaarder en visueel aantrekkelijker.
Hieronder ziet u een voorbeeld van hoe de vierkante haken worden gebruikt:
├─2*
is hetzelfde als:
├─agetty ├─agetty
Gebruik de optie
-c
om het samenvoegen van dezelfde takken uit te schakelen:
pstree -c
De threads van een proces worden weergegeven onder het bovenliggende proces en weergegeven met behulp van de procesnaam tussen accolades. Hier is een voorbeeld:
├─lxcfs───2*
Gebruik de optie
-t
om de volledige threadnamen weer te geven. Als u threads wilt verbergen en alleen processen wilt weergeven, gebruikt u de optie
-T
.
Doorgaans geeft
pstree
veel uitvoerregels weer die niet op het scherm passen. Als je de uitvoer pagina voor pagina wilt bekijken, leid je deze naar de opdracht
less
:
pstree | less
Als een gebruikersnaam als argument wordt gegeven, toont
pstree
alleen de processen die eigendom zijn van die gebruiker. De volgende opdracht toont bijvoorbeeld alleen die processen die zijn gestart door een gebruiker met de naam "linuxize":
pstree linuxize
Wanneer PID wordt opgegeven als een argument, geeft
pstree
een boom weer met het gegeven proces als de root van de boom. Hier is een voorbeeld:
pstree 1943
sshd───bash───pstree
Om de bovenliggende processen van het gegeven proces te tonen, gebruikt u de optie
-s
gevolgd door de proces-PID:
pstree -s 1943
systemd───sshd───sshd───bash───pstree
Toon PID's en PGID's
Gewoonlijk is de proces-ID bij het uitvoeren van de opdracht
pstree
de belangrijkste informatie
pstree
de gebruiker op zoek is. Als u bijvoorbeeld de PID kent, kunt u een defect proces beëindigen.
De optie
-p
instrueert
pstree
om de PID's te tonen:
pstree -p
PID's worden tussen haakjes weergegeven na elk proces of thread.
systemd(1)─┬─VBoxService(955)─┬─{VBoxService}(956) │ ├─{VBoxService}(957) │ ├─{VBoxService}(958) │ ├─{VBoxService}(959) │ ├─{VBoxService}(960) │ ├─{VBoxService}(961) │ └─{VBoxService}(962)…
Standaard,
pstree
, sorteer processen met dezelfde ouder op naam. De optie
-n
vertelt
pstree
om numerieke sortering te gebruiken, dwz sorteren op PID's:
pstree -pn
De procesgroep-ID of PGID's is de proces-ID van het eerste lid van de procesgroep. Gebruik de optie
-g
om PGID's te bekijken:
pstree -g
PID's worden ook tussen haakjes weergegeven na elk proces of thread.
systemd(1)─┬─VBoxService(954)─┬─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ └─{VBoxService}(954)…
Wanneer PID's of PGID's worden weergegeven, is samenvoegen impliciet uitgeschakeld.
Toon opdrachtregelargumenten
Sommige programma's kunnen worden opgeroepen met configuratie-opties die zijn opgegeven als opdrachtregelargumenten.
Standaard toont de
pstree
geen opdrachtregelargumenten voor de actieve processen. Om te bekijken hoe het proces is gestart, gebruikt u de opdracht samen met de optie
-a
:
pstree -a
… ├─agetty -o -p -- \\u --keep-baud 115200, 38400, 9600 ttyS0 vt220 ├─agetty -o -p -- \\u --noclear tty1 linux…
De markering
pstree
kunt u ook processen markeren voor een betere visuele weergave.
De optie
-h
instrueert
pstree
om het huidige proces en al zijn voorouders te markeren.
pstree -h
Om een specifiek proces te markeren, gebruikt u de optie
-H
gevolgd door de proces-ID:
pstree -H PID_NUMBER
Als de markering niet wordt ondersteund, wordt de opdracht met een fout afgesloten.
Conclusie
De opdracht
pstree
geeft de lopende processen weer in de vorm van een boomstructuur.
Typ
man pstree
in uw terminal voor informatie over alle beschikbare
pstree
opties.
Chmod commando in linux (bestandsrechten)
In Linux wordt toegang tot de bestanden beheerd via de bestandsrechten, attributen en eigendom. Deze tutorial behandelt het gebruik van de opdracht chmod om de toegangsrechten van bestanden en mappen te wijzigen.
Pwd commando in linux (huidige werkmap)
De huidige werkmap is de map waarin de gebruiker momenteel werkt. In dit artikel laten we u zien hoe u uw huidige werkmap kunt bepalen met de opdracht pwd
Dmesg commando in linux
Het opdrachtregelprogramma dmesg drukt de kernelringbuffer af en bestuurt deze. Het is handig voor het onderzoeken van kernel boot berichten en het debuggen van hardware gerelateerde problemen.







