pstree är ett kraftfullt och användbart kommando för att visa löpande processer i Linux. Liksom sin följeslagare ps, visar den alla pågående processer som för närvarande är aktiva på ditt inloggade system. Huvudskillnaden är att processerna är organiserade i ett träd istället för i en lista. Detta träd visar processer i ett förhållande mellan föräldrar och barn. Förälderprocessen är gytprocessen, som skapar alla barnprocesser under det.

Strukturen pf pstree liknar hierarkiska kataloger på Unix-system som Linux och MacOS. Med hjälp av denna struktur kan du snabbt navigera genom ditt processträ för att upptäcka vilka processer som hyser eller kontrollerar varandra. Detta möjliggör exakt eliminering av besvärliga eller out-of-control-processer med kill kommandot.

Relaterat : Komma igång med AWK-kommandot

Running pstree

För att köra den grundläggande formen av kommandot, öppna ett Terminal-fönster och skriv följande kommando och tryck sedan på Enter:

 pstree 

Detta kommando ensam visar en lista över alla pågående processer. Processen högst upp ( systemd i det här fallet) är förälderprocessen för allt som körs på din maskin. Processer under det härgades eller öppnades genom systemd. Ytterligare lager av indryckning indikerar liknande relationer, som ett släktträd.

Den grundläggande strukturen av pstree kan ses i följande iamage.

 föräldrar ---- barn (1) ---- subchild (1) | | --subchild (2) | | -child (2) 

Som standard sorteras processer med samma förälder alfabetiskt. Det finns andra sätt att sortera i pstree med flaggor som vi diskuterar nedan.

Använda pstree med flaggor

Liksom de flesta Terminal-program, finns det mer att pstree än bara kommandot. Förutom den grundläggande funktionaliteten hos pstree kan olika flaggor utlösa mer komplicerad utmatning från programmet.

För att kunna avslöja processidentifierande information kan vi använda -p flaggor, som visar processidentifikationsnummer eller PID.

 pstree -p 

Vi kan också sortera processer med PID istället för att namnge med -n flagga.

 pstree -np 

Du kanske märker att utsignalen från pstree ofta blir avskuren vid kanten av ditt terminalfönster. Du kan hantera det med -l flaggan som "wraps" långa linjer vid kanten av din terminalskärm.

 pstree -l 

Det kan dock göra resultatet lite svårt att läsa, som du kan se ovan.

Visar delar av trädet

Du kan också bara se delar av processträdet. Det finns två sätt att göra det. Den första är med -s flaggan, som låter dig se föräldern för det barnprocess du anger. Du kan ringa upp processer med dess PID.

 pstree-s 780 

Du kanske också vill se processer som skapats av en nuvarande användare. Om du är på ett fleranvändarsystem kan det här ge dig en bra uppfattning om vem som gör vad som är på ditt system. På ett enda användarsystem är det inte så informativt. Om du vill se processerna som skapats under en användare skriver du bara in användarens namn efter huvudkommandot.

 pstree alexander 

Det kommer att visa några kommandon som körs under den användarens konto, oavsett om de körs genom program som användaren kör eller genom kommandon som de exekverar exakt.

Slutsats

Som alltid kan varje version av Linux ha en liten vridning på det här kommandot, men det borde vara mycket standard på populära installationer. För att få hjälp med din version, skriv man pstree i kommandoraden och tryck på Enter för att öppna kommandot manuella sidan, eller "man sida." Du kan också se den grundläggande man sidan för pstree.