Ps: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
Zeile 1: Zeile 1:
 
=ps – Prozessstatus anzeigen=
 
=ps – Prozessstatus anzeigen=
 
==Optionen (BSD-Stil)==
 
*l langes Format
 
*U user zeige Prozesse eines Users an
 
*u zeige Besitzer und Startzeit
 
*j Jobs-Format (PGID, SID)
 
*s Signal-Informationen anzeigen
 
*m Speicher-Informationen anzeigen
 
*f Prozessbaum anzeigen
 
*a alle Prozesse mit TTY anzeigen
 
*x Prozesse ohne kontrollierendes Terminal anzeigen
 
*e Umgebungsvariablen anzeigen
 
*w Ausgabe verbreitern (mehrfach nutzbar)
 
*h Header unterdrücken
 
*r nur laufende Prozesse anzeigen
 
*n User-ID statt Name anzeigen
 
*txx nur Prozesse eines Terminals anzeigen (z.B. tty1 oder 1)
 
  
 
==Optionen (POSIX-Stil)==
 
==Optionen (POSIX-Stil)==
 
*-l langes Format
 
*-l langes Format
 
*-u user Prozesse eines Users anzeigen
 
*-u user Prozesse eines Users anzeigen
*-f ausführliche Ausgabe
+
*-f ausführliche Ausgabe (UID, PID, PPID, STIME, TTY, TIME, CMD)
 
*-j Jobs-Format (PGID, SID)
 
*-j Jobs-Format (PGID, SID)
 
*-s Signal-Informationen anzeigen
 
*-s Signal-Informationen anzeigen
 
*-m Speicher-Informationen anzeigen
 
*-m Speicher-Informationen anzeigen
*-e alle Prozesse anzeigen
+
*-e alle Prozesse aller Benutzer anzeigen
 
*-x Prozesse ohne kontrollierendes Terminal anzeigen
 
*-x Prozesse ohne kontrollierendes Terminal anzeigen
 
*-v Umgebungsvariablen anzeigen
 
*-v Umgebungsvariablen anzeigen
Zeile 31: Zeile 14:
 
*-r nur laufende Prozesse anzeigen
 
*-r nur laufende Prozesse anzeigen
 
*-H Header unterdrücken
 
*-H Header unterdrücken
*-n User-ID statt Name anzeigen
+
*-n User-ID statt User-Name anzeigen
*-t txx nur Prozesse eines Terminals anzeigen
+
*-t txx nur Prozesse eines Terminals anzeigen (z.B. tty1)
  
 
==Typische Beispiele==
 
==Typische Beispiele==
 
*ps
 
*ps
*ps aux
 
*ps ax
 
*ps u
 
 
*ps -ef
 
*ps -ef
*ps axf
 
*ps auxf
 
*ps auxww
 
*ps -ej
 
 
*ps -u root
 
*ps -u root
 +
*ps -fu root
 
*ps -p 1234
 
*ps -p 1234
 
*ps -p 1234,2345
 
*ps -p 1234,2345
 +
*ps -ej
 +
*ps -ex
  
==Filtern mit grep==
+
==Filtern==
*ps aux | grep apache
+
*ps -ef | grep apache
*ps aux | grep [a]pache
+
*ps -ef | grep [a]pache
  
 
==Sortieren==
 
==Sortieren==
*ps aux --sort=-%cpu
+
*ps -eo pid,user,%cpu,%mem,cmd --sort=-%cpu
*ps aux --sort=-%mem
+
*ps -eo pid,user,%cpu,%mem,cmd --sort=-%mem
  
 
==Top-Verbraucher==
 
==Top-Verbraucher==
*ps aux --sort=-%cpu | head -n 6
+
*ps -eo pid,user,%cpu,%mem,cmd --sort=-%cpu | head -n 6
*ps aux --sort=-%mem | head -n 6
+
*ps -eo pid,user,%cpu,%mem,cmd --sort=-%mem | head -n 6
  
 
==Eigene Ausgabefelder==
 
==Eigene Ausgabefelder==
Zeile 66: Zeile 45:
  
 
==Terminalbezogene Prozesse==
 
==Terminalbezogene Prozesse==
*ps ttty1
 
 
*ps -t tty1
 
*ps -t tty1
*ps a
+
*ps -et
*ps ax | grep '?'
 
  
 
==Umgebungsvariablen==
 
==Umgebungsvariablen==
*ps auxe
+
*ps -ev
  
 
==Übungsaufgaben==
 
==Übungsaufgaben==
 
;Aufgabe 1
 
;Aufgabe 1
 
*Zeige nur deine eigenen Prozesse an
 
*Zeige nur deine eigenen Prozesse an
 +
<!-- Lösung:
 +
ps -u $(whoami)
 +
-->
  
 
;Aufgabe 2
 
;Aufgabe 2
 
*Zeige alle Prozesse des Users root mit ausführlicher Anzeige
 
*Zeige alle Prozesse des Users root mit ausführlicher Anzeige
 +
<!-- Lösung:
 +
ps -fu root
 +
-->
  
 
;Aufgabe 3
 
;Aufgabe 3
 
*Zeige alle Prozesse ohne kontrollierendes Terminal
 
*Zeige alle Prozesse ohne kontrollierendes Terminal
 +
<!-- Lösung:
 +
ps -ex
 +
-->
  
 
;Aufgabe 4
 
;Aufgabe 4
 
*Stelle alle Prozesse als Baum dar
 
*Stelle alle Prozesse als Baum dar
 +
<!-- Lösung:
 +
ps -eo pid,ppid,cmd --forest
 +
-->
  
 
;Aufgabe 5
 
;Aufgabe 5
 
*Finde die drei Prozesse mit dem höchsten RAM-Verbrauch
 
*Finde die drei Prozesse mit dem höchsten RAM-Verbrauch
 +
<!-- Lösung:
 +
ps -eo pid,user,%mem,cmd --sort=-%mem | head -n 4
 +
-->
  
 
;Aufgabe 6
 
;Aufgabe 6
 
*Finde die fünf Prozesse mit der höchsten CPU-Last
 
*Finde die fünf Prozesse mit der höchsten CPU-Last
 +
<!-- Lösung:
 +
ps -eo pid,user,%cpu,cmd --sort=-%cpu | head -n 6
 +
-->
  
 
;Aufgabe 7
 
;Aufgabe 7
 
*Zeige PID und PPID aller Prozesse an
 
*Zeige PID und PPID aller Prozesse an
 +
<!-- Lösung:
 +
ps -eo pid,ppid,cmd
 +
-->
  
 
;Aufgabe 8
 
;Aufgabe 8
 
*Zeige alle Prozesse auf tty1 an
 
*Zeige alle Prozesse auf tty1 an
 +
<!-- Lösung:
 +
ps -t tty1
 +
-->
  
 
;Aufgabe 9
 
;Aufgabe 9
 
*Zeige Prozesse inklusive Umgebungsvariablen an
 
*Zeige Prozesse inklusive Umgebungsvariablen an
 +
<!-- Lösung:
 +
ps -ev
 +
-->
  
 
;Aufgabe 10
 
;Aufgabe 10
 
*Zeige nur Informationen zu einer bestimmten PID
 
*Zeige nur Informationen zu einer bestimmten PID
 +
<!-- Lösung:
 +
ps -p <PID>
 +
-->
  
 
==Hinweise==
 
==Hinweise==
*BSD-Optionen ohne Minus
+
*Im Kurs wird ausschließlich der POSIX-Stil verwendet
*POSIX-Optionen mit Minus
+
*Alle Optionen beginnen mit einem Minus (-)
*ps aux ist BSD-Stil
+
*ps zeigt eine Momentaufnahme, keine Live-Daten
*ps -ef ist POSIX-Stil
+
*Für Live-Ansicht siehe top oder htop
*ps zeigt Momentaufnahme, keine Live-Daten
 

Aktuelle Version vom 28. Januar 2026, 05:37 Uhr

ps – Prozessstatus anzeigen

Optionen (POSIX-Stil)

  • -l langes Format
  • -u user Prozesse eines Users anzeigen
  • -f ausführliche Ausgabe (UID, PID, PPID, STIME, TTY, TIME, CMD)
  • -j Jobs-Format (PGID, SID)
  • -s Signal-Informationen anzeigen
  • -m Speicher-Informationen anzeigen
  • -e alle Prozesse aller Benutzer anzeigen
  • -x Prozesse ohne kontrollierendes Terminal anzeigen
  • -v Umgebungsvariablen anzeigen
  • -w Ausgabe verbreitern (mehrfach nutzbar)
  • -r nur laufende Prozesse anzeigen
  • -H Header unterdrücken
  • -n User-ID statt User-Name anzeigen
  • -t txx nur Prozesse eines Terminals anzeigen (z.B. tty1)

Typische Beispiele

  • ps
  • ps -ef
  • ps -u root
  • ps -fu root
  • ps -p 1234
  • ps -p 1234,2345
  • ps -ej
  • ps -ex

Filtern

  • ps -ef | grep apache
  • ps -ef | grep [a]pache

Sortieren

  • ps -eo pid,user,%cpu,%mem,cmd --sort=-%cpu
  • ps -eo pid,user,%cpu,%mem,cmd --sort=-%mem

Top-Verbraucher

  • ps -eo pid,user,%cpu,%mem,cmd --sort=-%cpu | head -n 6
  • ps -eo pid,user,%cpu,%mem,cmd --sort=-%mem | head -n 6

Eigene Ausgabefelder

  • ps -eo pid,ppid,user,stime,cmd
  • ps -eo pid,cmd
  • ps -eo pid,ppid,cmd --forest

Terminalbezogene Prozesse

  • ps -t tty1
  • ps -et

Umgebungsvariablen

  • ps -ev

Übungsaufgaben

Aufgabe 1
  • Zeige nur deine eigenen Prozesse an
Aufgabe 2
  • Zeige alle Prozesse des Users root mit ausführlicher Anzeige
Aufgabe 3
  • Zeige alle Prozesse ohne kontrollierendes Terminal
Aufgabe 4
  • Stelle alle Prozesse als Baum dar
Aufgabe 5
  • Finde die drei Prozesse mit dem höchsten RAM-Verbrauch
Aufgabe 6
  • Finde die fünf Prozesse mit der höchsten CPU-Last
Aufgabe 7
  • Zeige PID und PPID aller Prozesse an
Aufgabe 8
  • Zeige alle Prozesse auf tty1 an
Aufgabe 9
  • Zeige Prozesse inklusive Umgebungsvariablen an
Aufgabe 10
  • Zeige nur Informationen zu einer bestimmten PID

Hinweise

  • Im Kurs wird ausschließlich der POSIX-Stil verwendet
  • Alle Optionen beginnen mit einem Minus (-)
  • ps zeigt eine Momentaufnahme, keine Live-Daten
  • Für Live-Ansicht siehe top oder htop