ps
ps - Prozess-Status
Syntax: ps [-] [lujsvmaxScewhrnu] [txx] [O[+|-]k1[[+|-]k2...]] [pids]
ps zeigt die Liste der Prozesse an. In den ersten beiden Spalten USER und PID der Ausgabe sind der Besitzer des Prozesses und die Prozess-ID angegeben, %CPU und %MEM geben den prozentualen Verbrauch von CPU-Zeit und den Speicherverbrauch an. In der Spalte TTY wird die Konsole (1,2,3,...) bzw. das Terminal-Fenster unter X Window (p0,p1,p2,...) angegeben, in dem der Prozess läuft. STAT enthält Informationen über den Status des Prozesses: Die meisten Prozesse haben hier nur ein S für sleeping (schlafend), R steht für runnable (ausführbar). Bereits beendete Prozesse, die noch nicht aus der Prozesstabelle entfernt wurden, erhalten ein Z für Zombie. Die START-Spalte gibt die Zeitpunkte wieder, zu denen die Prozesse gestartet wurden, TIME enthält die bisherigen Laufzeiten, und COMMAND gibt den vollständigen Aufruf an, mit dem der Prozess erzeugt wurde.
Aktuelle ps-Versionen setzen voraus, dass das proc-Dateisystem /proc eingebunden ist - dazu ist eine Zeile, welche in SuSE 6.0 sowie 6.1 bereits vorhanden ist,
none /proc proc defaults 0 0
in der Datei /etc/fstab nötig, und natürlich muss der Kernel dieses Pseudo-Dateisystem unterstützen, das Informationen über die Prozesse bereithält: Für jeden Prozess finden Sie unter /proc/[PID] zahlreiche Dateien die sich mit ls und cat auslesen lassen.
Optionen können auch ohne führendes »-«-Zeichen eingegeben werden:
Option | Beschreibung |
---|---|
l | langes Format |
u | zeige für jeden Prozess Besitzer und Startzeit an |
j | Jobs-Format: Zeige PGID und SID an |
s | Informationen über Signale ausgeben |
m | Speicher-Informationen anzeigen |
f | Baumstruktur der Prozesse anzeigen (ähnlich pstree) |
a | alle Prozesse (jedes Benutzers) anzeigen |
x | kontrollierendes Terminal nicht anzeigen |
e | Für den Prozess gültige Umgebungsvariablen mit anzeigen (sinnvollerweise mit mehreren Optionen »w« anwenden, um die Ausgabe nicht am Zeilenende abzuschneiden) |
w | längere Ausgabe. »w« kann mehrfach verwendet werden, um die maximale Länge um je eine Zeile zu vergrößern |
h | Header mit Feldbezeichnern unterdrücken |
r | nur laufende Prozesse ausgeben |
n | User-ID statt User-Name ausgeben |
txx | nur Prozesse ausgeben, die vom angegebenen Terminal kontrolliert werden. xx kann entweder einer der Terminal-Gerätenamen unter /dev (z.B. tty1) oder die entsprechende Kurzbezeichnung ohne »tty« (z.B. 1) sein. |
O[+|-]k1[,[+|-]k2[,...]]
Prozessliste nach Kriterien k1, k2,... sortieren (siehe Tabelle)
--sort=[+|-]k1[,[+|-]k2[,...]]
Prozessliste nach Kritierien k1, k2, ... (in Langform, siehe Tabelle) sortieren. Ein Plus- Zeichen vor dem Kriterium verwendet die Default-Reihenfolge für dieses Kriterium; dein Minux-Zeichen dreht diese um. Mögliche Kriterien finden Sie in der folgenden Tabelle.
Beispiel:
px aux --sort=-pid
Kriterium | Langform | Beschreibung |
---|---|---|
c | cmd | Name der ausgeführten Datei |
C | cmdline | volle Befehlszeile |
f | flags | flags as in long format F field |
g | pgrp | process group ID |
G | tpgid | process group ID des kontrollierenden Terminals |
j | cutime | aufaddierte User-Zeit |
J | cstime | aufaddierte System-Zeit |
k | utime | User-Zeit |
K | stime | System-Zeit |
m | min_flt | Anzahl der minor page faults |
M | maj_flt | Anzahl der major page faults |
n | cmin_flt | aufaddierte minor page faults |
N | cmaj_flt | aufaddierte major page faults |
o | session | session ID |
p | pid | Prozess-ID |
P | ppid | Parent-Prozess-ID |
r | rss | resident set size |
R | resident | resident pages |
s | size | Speichergröße in KB |
S | share | amount of shared pages |
t | tty | minor device number des kontrollierenden Terminals |
T | start_time | Startzeit des Prozesses |
U | uid | User ID |
u | user | User-Name |
v | vsize | total VM size in bytes |
y | priority | Kernel-Scheduling-Priorität |