Android

Pstree-kommando i Linux

How to use the pstree command: Linux tip

How to use the pstree command: Linux tip

Innholdsfortegnelse:

Anonim

Når du jobber på en Linux-maskin, trenger du noen ganger å finne ut hvilke prosesser som kjører for øyeblikket. Det er mange kommandoer du kan bruke til å finne informasjon om løpeprosessene, idet ps og top er de mest brukte., vil vi snakke om pstree kommandoen. Det ligner på ps , men i stedet for å liste opp de løpende prosessene, viser det dem i et tre. Det trelignende formatet er en mer praktisk måte å vise prosesshierarkiet og gjør utdataene mer visuelt tiltalende.

Slik bruker du pstree kommandoen

Den generelle syntaks for pstree kommandoen er som følger:

ps

I sin enkleste form når påkalles uten alternativ eller argument, viser pstree en hierarkisk trestruktur av alle kjørende prosesser:

pstree

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

Topp / rotelementet i treet er overordnet prosess for alle systemprosesser. I dette eksemplet er det systemd , som er den første prosessen som starter på oppstart.

pstree slår sammen identiske grener ved å plassere dem mellom firkantede parenteser og prefiksere dem med et heltall som representerer antall grener. Dette gjør utdataene mer lesbar og visuelt tiltalende.

Nedenfor er et eksempel som viser hvordan de firkantede parentesene brukes:

├─2*

er det samme som:

├─agetty ├─agetty

Hvis du vil deaktivere sammenslåingen av de samme grenene, bruker du alternativet -c :

pstree -c

Trådene til en prosess vises under overordnet prosess og vises ved å bruke prosessnavnet inne i krøllete bukseseler. Her er et eksempel:

├─lxcfs───2*

Bruk alternativet -t til å vise alle trådens navn. Hvis du vil skjule tråder og bare vise prosesser, bruk alternativet -T .

Vanligvis viser pstree mange utskriftslinjer som ikke passer på skjermen. Hvis du vil se utdataene en side av gangen, peker du den til kommandoen less :

pstree | less

Hvis et brukernavn blir gitt som et argument, viser pstree bare prosessene som eies av den brukeren. For eksempel viser følgende kommando bare prosessene som er startet av en bruker som heter "linuxize":

pstree linuxize

Når PID er spesifisert som et argument, viser pstree et tre med den gitte prosessen som roten til treet. Her er et eksempel:

pstree 1943

sshd───bash───pstree

For å vise overordnede prosesser for den gitte prosessen, bruk alternativet -s fulgt av prosess-PID:

pstree -s 1943

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

Vis PID-er og PGID-er

Vanligvis, når du kjører pstree kommandoen, er den viktigste informasjonen brukeren ser etter prosess-IDen. For eksempel, ved å kjenne PID kan du drepe en feilfunksjon.

Alternativet -p instruerer pstree å vise PID-er:

pstree -p

PID-er vises i parentes etter hver prosess eller tråd.

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

Som standard sorterer prosesser med samme overordnede etter navn. Alternativet -n forteller pstree å bruke numerisk sortering, dvs. sortere etter PID-er:

pstree -pn

Prosessgruppe-ID eller PGID-er er prosess-ID for det første medlemmet av prosessgruppen. For å se PGIDer bruker du alternativet -g :

pstree -g

PID-er vises også i parentes etter hver prosess eller tråd.

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

Når PID-er eller PGID-er vises, er fusjon implisitt deaktivert.

Vis kommandolinjeargumenter

Noen programmer kan påberopes med konfigurasjonsalternativer spesifisert som kommandolinjeargumenter.

Som standard viser ikke pstree kommandolinjeargumentene for pstree . For å se hvordan prosessen ble startet, bruker du kommandoen sammen med alternativet -a :

pstree -a

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

Opplyser

pstree lar deg også fremheve prosesser for bedre visuell representasjon.

Alternativet -h instruerer pstree å markere den nåværende prosessen og alle dens forfedre.

pstree -h

For å fremheve en spesifikk prosess, bruk alternativet -H etterfulgt av prosess-ID:

pstree -H PID_NUMBER

Hvis uthevingen ikke støttes, avslutter kommandoen med en feil.

Konklusjon

Kommandoen pstree viser pstree i form av en trestruktur.

For informasjon om alle tilgjengelige pstree alternativer, skriv man pstree i terminalen.

ps terminal