Hvordan bruke PS -kommandoen til å finne løpsprosesser på Linux

Hvordan bruke PS -kommandoen til å finne løpsprosesser på Linux
Den fulle formen for PS er prosessstatus. Det er en kommando som brukes til å finne informasjon om å kjøre prosesser på Linux som for øyeblikket. PS er en veldig viktig kommando av Linux.I denne artikkelen vil jeg vise deg hvordan du bruker PS -kommandoen til å finne løpsprosesser på Linux. Så la oss komme i gang.

Ulike typer alternativer:

PS -kommandoen godtar forskjellige alternativer.

  1. Unix -alternativer - har ledende strek.
    $ ps -e
  1. BSD -alternativer - har ikke ledende dash.
    $ ps aux
  1. GNU -alternativer - har dobbelt ledende strek.
    $ ps --pid 1001

I dette eksemplet vil jeg bruke UNIX og til tider GNU -alternativer. Men BSD -alternativene er like. Det meste av tiden kan du blande dem sammen uten problemer. Skjønt, du kan ikke blande noen av alternativene sammen, da det ikke vil fungere. Så vær forsiktig.

Finne alle løpsprosesser:

Med PS -kommando kan du finne alle løpsprosessene på maskinen din.

For å finne alle løpsprosessene med PS, bruk PS som følger,

$ ps -ef

Som du kan se, Uid (bruker -ID), PID (prosess -ID), Ppid (Foreldre prosess -ID), CMD (Kommando brukes til å kjøre prosessen) og annen informasjon om alle løpsprosessene vises.

Du kan liste opp alle løpsprosessene med forskjellige PS Alternativer kombinasjon. De vil vise forskjellig informasjon om løpsprosessene. Du kan faktisk fortelle PS For å vise spesifikk informasjon, som vi kommer til i den senere delen.

$ ps -e

Som du kan se, PS -e viser PID, Tty (terminalnummer), TID (prosess kjøretid) og CMD av løpsprosessene. Det er mye mindre informasjon enn tidligere.

$ ps -ef

Det viser mye informasjon om løpsprosessene, men noen av kolonnene som for eksempel C (Prosessorutnyttelse), Sz (Størrelse på fysiske sider), RSS (Resident Set Size), PSR (prosessor den prosessen er for øyeblikket tilordnet), Stime (tiden da prosessen startet) osv. vises ikke. Så det er litt mer kompakt enn PS -ef.

Nok en variant av PS,

$ ps -ely

Denne viser deg Uid (bruker-ID), Pri (Gjeldende prioritering av prosessen), Ni (fin verdi) også. Så det er veldig nyttig.

Gjør PS -navigasjonen enkelt:

Et typisk Linux -system har mye prosess som kjører i bakgrunnen. Så utgangen fra PS Kommandoen er veldig lang. Det er vanskeligere å finne nyttig informasjon der. Men vi kan bruke en personsøker som som mindre å se etter prosessene litt lettere.

Du kan bruke mindre Pager som følger:

$ ps -ef | mindre

Utgangen av PS vil bli åpnet med mindre.

Nå kan du bruke og Piltøkler for å navigere veldig enkelt.

Du kan også søke etter spesifikke nøkkelord her. Dette er veldig nyttig for å finne prosessene du leter etter.

For å søke etter en prosess, la oss si ACPI, Skriv inn nøkkelordet som følger i mindre Pager.

/ACPI

Nå, trykk .

Som du kan se, prosessen med nøkkelordet ACPI er fremhevet.

Du kan også trykke på n og p Nøkler for å gå til henholdsvis neste og forrige kamp (hvis tilgjengelig).

Som du ser, presset jeg n til og neste prosess med nøkkelordet ACPI er fremhevet.

For å gå ut av personsøkeren, trykk q.

Velg kolonner manuelt som skal vises i PS:

De PS -e / PS -ef / PS -ef etc -kommando viser noen standardkolonner. Men hvis du vil, kan du fortelle PS om å vise deg spesifikke kolonner, eller legge til flere kolonner i standardsettet med kolonner.

La oss for eksempel si, du vil bare se %Mem (prosent minnebruk), PID (prosess -ID) og Uid (prosesseier -ID) og KOMMANDO (Prosesskommando), Kjør deretter PS som følger:

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

Som du ser, viste PS bare informasjonen jeg ba den om. Intet mer, intet mindre.

Kolonne -nøkkene som brukes her er %MEM (for %MEM), PID (for PID), UID (for UID), COMM (for kommando). PS støtter mange nøkkelord. Du kan finne hele listen på MAN -siden til PS.

Bare åpne mannsiden til PS med følgende kommando og naviger til Standardformatspesifikasjoner Seksjon som vist på skjermbildet nedenfor.

$ mann ps

Hvis du vil vise flere kolonner sammen med standardsettet med kolonner, kan du bruke -O alternativ for å spesifisere kolonnene du vil se.

For eksempel,

$ ps -ef -o %CPU

Som du ser, la jeg til %PROSESSOR og %Mem Kolonne sammen med standardkolonnene til PS -ef kommando.

Sortering av PS -kommando:

Du kan også sortere utgangen fra PS i henhold til hvilken som helst spesifikk kolonne eller kolonner. Du kan sortere utgangen fra PS i stigende eller synkende rekkefølge avhengig av kravet ditt.

For å sortere utgangen fra PS ved hjelp av en enkelt kolonne, kan du bruke PS som følger:

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

Noen eksempel vil gjøre det tydeligere.

La oss si, du vil sortere prosessene avhengig av hvor lenge prosessen kjører i stigende rekkefølge. Du kan kjøre PS som følger:

$ ps -ef - -sort =+tid

Eller

$ ps -ef - -sort = tid

MERK: Standarden er å sortere i stigende rekkefølge. Så du kan utelate + Signer hvis du vil.

Som du kan se, sorteres utgangen i stigende rekkefølge av TID kolonne.

Igjen, la oss si, du vil sortere prosessene, avhengig av hvor lenge prosessen kjører i synkende rekkefølge. Da ville PS -kommandoen være:

$ ps -ef - -sort = -time

Som du ser er prosessene som kjører for det lengste først oppført.

Hvis du vil sortere etter flere kolonner, er det bare å legge til kolonnene som følger:

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

Hvor du skal dra neste?

Jeg har dekket det grunnleggende i PS -kommandoen. Nå skal du kunne lære mer om PS -kommandoen fra Man -siden til PS.

Du kan få tilgang til Man -siden til PS som følger,

$ mann ps

For eksempel kan du finne spesifikk prosess hvis du vet at det er PID ved å bruke PS som følger:

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

MERK: Her, 2060 er PID -en i prosessen.

Du kan også søke etter prosesser som eies av spesifikk bruker eller gruppe osv.

For eksempel, for å finne alle løpsprosessene til påloggingsbrukeren din, kjør PS som følger:

$ ps -o bruker,%mem,%cpu -u $ (whoami)

MERK: Du kan erstatte $ (whoami) med et hvilket som helst brukernavn du vil liste opp prosesser som kjører som den brukeren.

Så det er slik du bruker PS -kommando for å finne løpsprosesser på Linux. Takk for at du leste denne artikkelen.