Skip to main content

Eksempel Brug af Linux ps Command

Contain Yourself: An Intro to Docker and Containers by Nicola Kabar and Mano Marks (Juni 2025)

Contain Yourself: An Intro to Docker and Containers by Nicola Kabar and Mano Marks (Juni 2025)
Anonim

Det ps kommando frembringer en liste over de igangværende processer på din computer. Denne vejledning viser dig de mere almindelige anvendelser af ps-kommandoen, så du kan få mest muligt ud af det.

Det ps kommando bruges almindeligvis i forbindelse med grep kommando og mere eller mindre kommandoer.

Disse ekstra kommandoer hjælper med at filtrere og paginere output fra ps som ofte kan være ganske lang.

Sådan bruges PS Command

På egen hånd, den ps kommando viser de kørende processer, som brugeren kører i et terminalvindue. At påberåbe sig ps skriv blot følgende:

ps

Udgangen vil vise rækker af data, der indeholder følgende oplysninger:

  • PID
  • TTY
  • Tid
  • Kommando

PID er proces-id'et, der identificerer løbeprocessen. TTY er terminaltypen.

På egen hånd, den ps kommandoen er ret begrænset. Du vil nok se alle løbende processer. For at se alle de kørende processer skal du bruge en af ​​følgende kommandoer:

ps-a

ps -e

For at vise alle processerne bortset fra sessionsledere, udfør følgende kommando:

ps -d

Så hvad er en session leder? Når en proces starter andre processer, er det sessionslederen for alle de øvrige processer. Så forestill dig processen EN starter processen B og proces C . Behandle B starter processen D og proces C starter processen E . Når du lister alle processer undtagen sessionsledere, vil du se B, C, D og E men ikke EN .

Du kan negere nogle af de valg, du har valgt ved at bruge N kontakt. For eksempel, hvis du vil se, kører sessionsledere kun følgende kommando:

ps -d -N

Det er klart, at N Det er ikke særlig fornuftigt, når det bruges sammen med -e eller -EN skifter, da det slet ikke viser noget.

Hvis du kun vil se processerne i forbindelse med denne terminal, kør følgende kommando:

ps t

Hvis du vil se alle de kørende processer ved hjælp af følgende kommando:

ps r

Valg af specifikke processer ved hjælp af ps-kommandoen

Du kan returnere specifikke processer ved hjælp af ps kommando, og der er forskellige måder at ændre udvælgelseskriterierne på.

For eksempel, hvis du kender proces-id, kan du simpelthen bruge følgende kommando:

ps-p

Du kan vælge flere processer ved at angive flere proces-id'er som følger:

ps -p "1234 9778"

Du kan også angive dem ved hjælp af en kommasepareret liste:

ps-p 1234,9778

Chancerne er, at du ikke kender proces ID, og ​​det er lettere at søge efter kommando. For at gøre dette skal du bruge følgende kommando:

ps-c

For at se, om Chrome kører, kan du bruge følgende kommando:

ps-krom

Du kan blive overrasket over at se, at dette returnerer en proces for hver åben fane.

Andre måder at filtrere resultater på er i gruppe. Du kan søge efter gruppenavn ved hjælp af følgende syntaks:

ps-g ps - gruppe

For eksempel for at finde ud af alle processer, der køres af kontogruppen, skriver du følgende:

ps -g "konti" ps - gruppe "konti"

Du kan også søge efter gruppe id i stedet for gruppenavn ved at bruge en lille bogstav "g" som følger:

ps-g ps - gruppe

Hvis du vil søge efter en liste over session-id'er, skal du bruge følgende kommando:

ps-s

Alternativt kan du bruge følgende til at søge efter terminaltype.

ps -t

Hvis du vil finde alle processer, der køres af en bestemt bruger, kan du prøve følgende kommando:

ps u

For eksempel at finde alle de processer, der køres af gary Kør følgende:

ps u "gary"

Bemærk, at dette viser den person, hvis legitimationsoplysninger bruges til at køre kommandoen. For eksempel, hvis du er smedet i som gary og køre ovenstående kommando vil det vise alle de kommandoer, der løb af dig.

Hvis du logger ind som Tom og brug sudo for at køre en kommando vil ovenstående kommando vise Toms kommando som ledet af gary og ikke Tom .

For at begrænse listen til bare de processer, der virkelig kører gary brug følgende kommando:

ps-u "gary"

Formatering ps Command Output

Som standard får du de samme fire kolonner, når du bruger ps kommando:

  • PID
  • TTY
  • Tid
  • Kommando

Du kan få en komplet liste ved at køre følgende kommando:

ps -ef

Det -e, som du ved, viser alle processerne og f eller -f viser alle detaljer.

De returnerede kolonner er som følger:

  • bruger ID
  • PID
  • PPID
  • C
  • STIME
  • TTY
  • Tid
  • Kommando

Bruger-id er den person, der kørte kommandoen. PID'en er proces-id for kommandoen kommandoen. PPID er den overordnede proces, der startede kommandoen.

Det C kolonne viser antallet af børn en proces har. STIME er starttidspunktet for processen. TTY er terminalen, tiden er den tid det tog at køre, og kommandoen er den kommando, der blev kørt.

Du kan få endnu flere kolonner ved at bruge følgende kommando:

ps -eF

Dette returnerer følgende kolonner:

  • UID
  • PID
  • PPID
  • C
  • SZ
  • RSS
  • PSR
  • STIME
  • TTY
  • Tid
  • Kommando

De ekstra kolonner er SZ, RSS og PSR.SZ er størrelsen af ​​processen, RSS er den rigtige hukommelsesstørrelse, og PSR er den processor, kommandoen er tildelt.

Du kan angive et brugerdefineret format ved hjælp af følgende switch:

ps -e -format

De tilgængelige formater er som følger:

  • % cpu: CPU udnyttelse
  • % mem: Hukommelsesprocentudnyttelse
  • args: Kommandoen med alle sine argumenter
  • c: Processorudnyttelse
  • cmd: Kommandoen
  • comm: Kun kommandoenavnet
  • cp: CPU brug
  • cputime: CPU-tid
  • egid: Effektiv gruppe id
  • egroup: Effektiv gruppe
  • Etime: Forløbet tid
  • euid: Effektiv bruger id
  • euser: Effektiv bruger
  • gid: Gruppe id
  • gruppe: Gruppe navn
  • pgid: Procesgruppe id
  • pgrp: Procesgruppe
  • PPID: Forældreproces ID
  • Start: Tid, processen startede
  • sz: Størrelse i fysiske sider
  • thcount: Tråde ejes af processen
  • tid: Kumulativ tid
  • uid: Bruger ID
  • uname: Brugernavn

Der er mange flere muligheder, men det er de mest almindeligt anvendte.

For at bruge formaterne skal du skrive følgende:

ps -e - format = "uid uname cmd time"

Du kan blande og matche elementerne, som du ønsker dem at være.

Sortering af output

For at sortere output skal du bruge følgende notation:

ps -ef - sort

Valget af sorteringsmuligheder er som følger:

  • cmd: Executable navn
  • pcpu: CPU udnyttelse
  • flag: Flag
  • pgrp: Procesgruppe id
  • cutime: Kumulativ bruger tid
  • cstime: Kumulativ systemtid
  • utime: Bruger tid
  • pid: Proces ID
  • PPID: Forældre proces ID
  • størrelse: Størrelse
  • uid: Bruger ID
  • bruger: Brugernavn

Igen er der flere muligheder til rådighed, men disse er de mest almindelige.

Et eksempel sortere kommandoen er som følger:

ps -ef --sort bruger, pid

Brug af ps Med grep, færre og flere kommandoer

Som nævnt i starten er det almindeligt at bruge ps med grep, mindre og mere kommandoer.

Det mindre og mere kommandoer hjælper dig med at sejle gennem resultaterne en side af gangen. For at bruge disse kommandoer skal du blot røre udgangen fra grep ind i dem som følger:

ps -ef | mere ps -ef | mindre

Det grep kommando hjælper dig med at filtrere resultaterne fra ps kommando.

For eksempel:

ps -ef | grep chrome

Resumé

Det ps Kommandoen bruges almindeligvis til noteringsprocesser inden for Linux. Du kan også bruge top kommando for at vise løbende processer på en anden måde.