Er dit Linux-system kører langsomt? Eller er du bare nysgerrig efter hvad der foregår under emhætten? Der er et kraftigt indbygget program kaldet "ps", der gør det muligt for brugerne at se et øjebliksbillede af de processer, der kører på et system. Vi diskuterer nogle af de muligheder, der er tilgængelige for ps, og i konklusion skal du kunne køre kørende processer på din linuxcomputer som en erfaren nørd.

Introduktion

De fleste versioner af ps accepterer BSD-stilindstillinger (som kan grupperes og må IKKE bruges med et strejf), UNIX-stilindstillinger (som kan grupperes og skal bruges med et strejf) og GNU lange muligheder (som er forud for to streger). For denne artikel vil vi blande og bruge flere valgtyper med en bias for UNIX-stilarter. For eksempel:

 ps -u rod u-sort = pid 
  • UNIX STYLE -u root specificerer user = root
  • BSD STYLE u angiver visning af brugerorienteret format. Dette er en yndlingsmulighed, da outputformatet fremstillet ved hjælp af dette indeholder nogle meget nyttige oplysninger.
  • GNU LONG OPTION- –sort specificerer proces sorteringsrækkefølge. I dette tilfælde sortere efter proces id (pid)

Denne artikel foretrækker UNIX-muligheder og bruger kun BSD til kortfattet brug. For eksempel kommandoen

 ps u 

viser processerne af den nuværende bruger, der er knyttet til en terminal, med et "brugerorienteret" outputformat. For at få det samme outputformat ved hjælp af UNIX-indstillinger kræver indstillingen

 ps -o "bruger, pid, pcpu, pmem, vsz, rss, tty, stat, bsdstart, bsdtime, args" 

Denne '-o' optionens argumentforklaringer er:

  • bruger - det effektive brugernavn eller brugernavn for processen
  • pid - proces id
  • pcpu - CPU-tiden brugt af processen divideret med den tid, processen har kørt
  • pmem - procentdelen af ​​den fysiske hukommelse, der bruges af processen
  • vsz - den virtuelle hukommelsesstørrelse af processen
  • rss - den ikke-bytte fysiske hukommelse processen har brugt
  • tty - den processtyrende terminal i processen
  • stat - processtatus, bestemt ved hjælp af processtatuskoder (læs manens sider for mere info)
  • start_time - den tid kommandoen startede
  • tid - den kumulative CPU-tid, der bruges af processen
  • args - kommandoen bruges til at køre processen sammen med sine argumenter. (Dette er en grund til, at det aldrig er en god ide at køre en kommando og indtaste dit kodeord som et kommandolinjeprincip. Enhver anden bruger på systemet kan køre ps og se de kommandoer, du har kørt, sammen med alle de muligheder og argumenter, der er bestået ).

Den konvention, der anvendes fra nu, vil være kommandoen (ps) efterfulgt af BSD'en'-mulighed for at angive outputformatering og derefter UNIX- og GNU-indstillingerne efter behov.

Nogle 'PS' indstillinger

At køre 'ps' uden argumenter viser en liste over processer med det samme bruger-id som invoker og tilknyttet samme terminal som invoker.

For at vise alle igangværende processer:

 ps u -e 

For at vise alle processer af den aktuelle bruger:

 ps u -u `whoami` 

For at vise alle processer af den aktuelle bruger, men sorteret efter cpu-brug (faldende).

BEMÆRK: I kommandoen nedenfor bruger vi '-pcpu' for at opnå procentuel cpu-brug nedadgående. For stigende skal du bruge '+ pcpu' eller bare 'pcpu.' Kontakt manens sider for yderligere sorteringsspecifikationer. Nogle almindelige er pmem (hukommelsesbrug), start_time (tidspunktet kommandoen blev kørt) og tid (mængde cpu tid brugt af kommandoen).

 ps u -u `whoami` - sort = -pcpu 

For at vise alle processer af den aktuelle bruger i et træformat:

 ps u -jH -u `whoami` 

Ved hjælp af rør kan ps kombineres med hoved for at vise de øverste processer. Den næste kommando sorterer først ved hukommelsesbrug, og rør derefter gennem hovedet for at vise processerne ved hjælp af den mest hukommelse. Hoved viser de første ti linjer som standard, så denne kommando vil vise de øverste ni processer (Udgangshovedet er første linie).

Bemærk: "% mem" og "pmem" er synonyme, som er "% cpu" og "pcpu".

 ps u -u `whoami` - sort = -% mem | hoved 

For at vise det samme for alle processer, uanset bruger bruger du -e indstillingen:

 ps u -e - sorter = -% mem | hoved 

Konklusion

Der er bogstaveligt talt hundredvis af muligheder (selv om nogle er aliaser), og vi vil gerne høre om og se dine yndlingsbrugen metoder. Venligst del i kommentarerne nedenfor.