Overvågning

Sådan bruges ps kommandoen til at finde kørende processer på Linux

Sådan bruges ps kommandoen til at finde kørende processer på Linux
Den fulde form for ps er processtatus. Det er en kommando, der bruges til at finde oplysninger om aktuelt kørende processer på Linux. ps er en meget vigtig kommando af Linux.I denne artikel vil jeg vise dig, hvordan du bruger kommandoen ps til at finde kørende processer på Linux. Så lad os komme i gang.

Forskellige typer valgmuligheder:

PS-kommandoen accepterer forskellige muligheder.

  1. UNIX-muligheder - har førende bindestreg. $ ps -e
  1. BSD-indstillinger - har ikke førende bindestreg. $ ps aux
  1. GNU-indstillinger - har dobbelt førende bindestreg. $ ps --pid 1001

I dette eksempel vil jeg bruge UNIX og til tider GNU-indstillinger. Men BSD-indstillingerne er ens. For det meste kan du blande dem sammen uden problemer. Selvom du ikke kan blande nogle af mulighederne sammen, da det ikke fungerer. Så vær forsigtig.

Find alle kørende processer:

Med ps kommando kan du finde alle kørende processer på din maskine.

Brug ps som følger for at finde alle kørende processer med ps,

$ ps -ef

Som du kan se, er UID (bruger-id), PID (proces-id), PPID (forældreproces-id), CMD (kommando, der bruges til at køre processen) og nogle andre oplysninger om alle kørende processer vises.

Du kan liste alle kørende processer med forskellige ps valgmulighedskombination. De viser forskellige oplysninger om de kørende processer. Du kan faktisk fortælle ps for at vise specifikke oplysninger, som vi kommer til i det senere afsnit.

$ ps -e

Som du kan se, ps -e viser PID, TTY (terminalnummer), TID (procestid) og CMD af de kørende processer. Det er meget mindre information end tidligere.

$ ps -ef

Det viser en masse information om de kørende processer, men nogle af kolonnerne som f.eks C (processorudnyttelse), SZ (størrelse på fysiske sider), RSS (beboers indstillet størrelse), PSR (processor, som processen i øjeblikket er tildelt til), STIME (det tidspunkt, hvor processen startede) osv. vises ikke. Så det er lidt mere kompakt end ps -eF.

En anden variant af ps,

$ ps -ely

Denne viser dig UID (bruger ID), PRI (nuværende prioritet for processen), NI (nice værdi) så godt. Så det er virkelig praktisk.

Gør ps-navigation let:

Et typisk Linux-system har en masse processer, der kører i baggrunden. Så output af ps kommandoen er meget lang. Det er sværere at finde nyttige oplysninger der. Men vi kan bruge en personsøger som f.eks mindre at kigge efter processerne lidt lettere.

Du kan bruge mindre personsøger som følger:

$ ps -ef | mindre

Resultatet af ps åbnes med mindre.

Nu kan du bruge og piletasterne for at navigere på listen meget let.

Du kan også søge efter specifikke nøgleord her. Dette er virkelig nyttigt til at finde de processer, du leder efter.

Lad os sige for at søge efter processer acpi, skriv nøgleordet som følger i mindre personsøger.

/ acpi

Nu skal du trykke på .

Som du kan se, er processen med nøgleordet acpi er fremhævet.

Du kan også trykke på n og s taster for at gå til henholdsvis næste og forrige kamp (hvis tilgængelig).

Som du kan se, trykkede jeg n til og den næste proces med nøgleordet acpi er fremhævet.

Tryk på for at gå ud af personsøgeren q.

Vælg manuelt kolonner, der skal vises i ps:

Det ps -e / ps -ef / ps -eF etc-kommandoen viser nogle standardkolonner. Men hvis du vil, kan du bede ps om at vise dig bestemte kolonner eller tilføje yderligere kolonner til standardsættet med kolonner.

Lad os for eksempel sige, at du kun vil se % MEM (procent hukommelsesforbrug), PID (proces-id) og UID (proces ejer-id) og KOMMANDO (proceskommando), kør derefter ps som følger:

$ ps -e -o% mem, pid, uid, comm

Som du kan se, viste ps kun de oplysninger, som jeg bad om. Intet mere, intet mindre.

Kolonnens nøgleord, der bruges her, er% mem (for% MEM), pid (for PID), uid (for UID), comm (for COMMAND). ps understøtter mange nøgleord. Du kan finde hele listen på mandsiden til ps.

Åbn bare mandsiden på ps med følgende kommando og naviger til STANDARDFORMATSPECIFIKATIONER sektion som vist i skærmbilledet nedenfor.

$ mand ps

Hvis du vil vise yderligere kolonner sammen med standardsættet med kolonner, kan du bruge -O mulighed for at specificere de kolonner, du vil se.

For eksempel,

$ ps -ef -O% cpu

Som du kan se, tilføjede jeg % CPU og % MEM kolonne sammen med standardkolonnerne i ps -ef kommando.

Sortering af output fra ps-kommando:

Du kan også sortere output af ps efter en hvilken som helst specifik kolonne eller kolonne. Du kan sortere output af ps i stigende eller faldende rækkefølge afhængigt af dit krav.

For at sortere output af ps ved hjælp af en enkelt kolonne kan du bruge ps som følger:

$ ps -ef --sort = (+ | -) kolonnekode

Nogle eksempler vil gøre det klarere.

Lad os sige, at du vil sortere processerne afhængigt af hvor længe processen kører i stigende rækkefølge. Du kan køre ps som følger:

$ ps -ef --sort = + tid

Eller

$ ps -ef - sort = tid

BEMÆRK: Standard er sortering i stigende rækkefølge. Så du kan udelade + underskriv hvis du vil.

Som du kan se, sorteres output i stigende rækkefølge efter TID kolonne.

Lad os igen sige, at du vil sortere processerne afhængigt af hvor længe processen kører i faldende rækkefølge. Derefter ville ps-kommandoen være:

$ ps -ef - sort = -tid

Som du kan se, vises de processer, der kører længst først.

Hvis du vil sortere efter flere kolonner, skal du blot tilføje kolonnerne som følger:

$ ps -ef --sort = tid, -% mem,% cpu

Hvor skal man gå hen?

Jeg har dækket det grundlæggende i ps-kommandoen. Nu skal du være i stand til at lære mere om ps-kommandoen fra mandsiden til ps.

Du kan få adgang til man-siden på ps som følger,

$ mand ps

For eksempel kan du finde en bestemt proces, hvis du ved, at det er PID ved hjælp af ps som følger:

$ ps -O% mem,% cpu -p 2060

BEMÆRK: Her, 2060 er procesens PID.

Du kan også søge efter processer, der ejes af en bestemt bruger eller gruppe osv.

For eksempel, for at finde alle kørende processer for din login-bruger skal du køre ps som følger:

$ ps -O bruger,% mem,% cpu -U $ (whoami)

BEMÆRK: Du kan erstatte $ (whoami) med ethvert brugernavn, du vil angive, hvilke processer der kører som den bruger.

Så det er sådan, du bruger ps-kommando til at finde kørende processer på Linux. Tak, fordi du læste denne artikel.

Sådan installeres og afspilles Doom på Linux
Introduktion til undergang Doom-serien opstod i 90'erne efter frigivelsen af ​​den originale Doom. Det var et øjeblikkeligt hit, og fra den tid af har...
Vulkan til Linux-brugere
Med hver nye generation af grafikkort ser vi spiludviklere skubbe grænserne for grafisk troskab og komme et skridt tættere på fotorealisme. Men på tro...
OpenTTD vs Simutrans
Oprettelse af din egen transportsimulering kan være sjovt, afslappende og ekstremt lokkende. Derfor skal du sørge for at prøve så mange spil som mulig...