Hoe Actieve Python Processen Weergeven?

Gepubliceerd 14 juli 2024

Probleem: Identificeren van actieve Python-processen

Het monitoren van actieve Python-processen is belangrijk voor het beheren van systeembronnen en het oplossen van prestatieproblemen. Het kan moeilijk zijn om meerdere Python-scripts bij te houden die tegelijkertijd draaien, vooral bij het werken met complexe applicaties of geautomatiseerde taken.

Het 'ps'-commando gebruiken om Python-processen weer te geven

Basisgebruik van het 'ps'-commando

Het 'ps'-commando toont informatie over actieve processen op een Unix-achtig systeem. Het geeft een momentopname van huidige processen weer, inclusief hun Process ID (PID), terminal, CPU-gebruik, en meer.

Om Python-processen weer te geven met 'ps', combineer je het met het 'grep'-commando:

ps aux | grep python

Dit commando toont processen die "python" bevatten in hun naam of opdrachtregel. De 'aux'-opties geven een gedetailleerd overzicht van alle processen voor alle gebruikers.

Tip: Grep uitsluiten van resultaten

Om het 'grep'-commando zelf uit te sluiten van de resultaten, gebruik je het volgende commando:

ps aux | grep '[p]ython'

Deze truc gebruikt vierkante haakjes rond de eerste letter, wat overeenkomt met 'python' maar niet met '[p]ython', waardoor het grep-proces zelf effectief wordt gefilterd.

Geavanceerde 'ps'-opties voor gedetailleerde informatie

Voor meer details over Python-processen, gebruik je deze vlaggen met het 'ps'-commando:

ps -eo pid,ppid,user,%cpu,%mem,start,time,command | grep python

Dit commando biedt:

  • PID: Process ID
  • PPID: Parent Process ID
  • USER: Gebruiker die het proces draait
  • %CPU: CPU-gebruik
  • %MEM: Geheugengebruik
  • START: Starttijd van het proces
  • TIME: CPU-tijd
  • COMMAND: Volledige opdrachtregel

Om deze uitvoer te lezen:

  1. Controleer de PID om specifieke processen te identificeren.
  2. Kijk naar de %CPU en %MEM kolommen voor brongebruik.
  3. De START en TIME kolommen tonen wanneer het proces is begonnen en zijn looptijd.
  4. De COMMAND kolom toont het volledige Python-commando, wat kan helpen bij het identificeren van het script of de applicatie.

Het gebruik van deze 'ps'-opties geeft je een helder overzicht van je Python-processen en hun brongebruik.

'pgrep' gebruiken voor Python-procesidentificatie

Introductie tot 'pgrep'

'pgrep' is een hulpmiddel dat zoekt naar processen op basis van hun namen of attributen. Het helpt bij het vinden van proces-ID's (PID's) van draaiende programma's. 'pgrep' is eenvoudig en kan processen gemakkelijk filteren.

Om 'pgrep' te gebruiken met Python, gebruik je deze basissyntax:

pgrep python

Dit commando geeft een lijst van PID's van processen met "python" in hun naam. Voor meer details, gebruik je de '-l'-vlag:

pgrep -l python

Dit toont zowel de PID als de procesnaam.

Tip: 'pgrep' gebruiken met reguliere expressies

Je kunt reguliere expressies gebruiken met 'pgrep' voor nauwkeurigere overeenkomsten. Bijvoorbeeld, om Python-processen met versienummers te vinden:

pgrep -f "python23?"

Dit komt overeen met processen zoals "python3", "python3.8", of "python2.7".

'pgrep' combineren met andere commando's

Je kunt 'pgrep' combineren met andere commando's voor meer operaties. Hier zijn enkele voorbeelden:

Om alle Python-processen te beëindigen:

pkill -f python

Om volledige opdrachtregels van Python-processen te zien:

pgrep -af python

Om Python-processen voor een specifieke gebruiker weer te geven:

pgrep -u username python

Om draaiende Python-processen te tellen:

pgrep python | wc -l

Om gedetailleerde informatie over Python-processen te verkrijgen:

pgrep python | xargs ps -fp