(report process status)
ps gibt Informationen über Prozesse aus. Dabei wird eine Momentaufnahme über den Zustand des Systems bzw. der Prozesse ausgegeben, der nach dem Bruchteil einer Sekunde schon wieder überholt sein kann und daher zum Zeitpunkt der Ausgabe nicht mehr den wahren Zustand widerspiegelt.
Syntax
ps[ -aAcdeflj][ -g grplist][ -G grplist][ -n namelist][ -o format]... [ -p proclist][ -s sesslist][ -t termlist][ -T][ -u userlist][ -U userlist] |
Keine Option angegeben ps gibt Informationen über Prozesse aus, die mit der kontrollierenden Datensichtstation verbunden sind. Die Ausgabe besteht aus einer kurzen Auflistung
Die Bedeutung der Ausgabespalten ist im Abschnitt Ausgabe genauer erläutert.
Es werden Informationen über die mit einer Datensichtstation verbundenen Prozesse ausgegeben, wobei jedoch Prozessgruppenführer nicht berücksichtigt werden.
Es werden Informationen über die eigenen Prozesse ausgegeben. Diese Option ist äquivalent zur Option -e.
Es werden zusätzlich Informationen über die Klasse und die Priorität der Prozesse ausgegeben.
Neben Informationen über die mit einer Datensichtstation verbundenen Prozesse, werden auch Informationen über Prozesse ausgegeben, die nicht mit einer Datensichtstation verbunden sind. Prozessgruppenführer werden jedoch nicht berücksichtigt.
Es werden Informationen über die eigenen Prozesse ausgegeben. Diese Option ist äquivalent zur Option -A. BS2000:
(f - full list) Der Umfang an Informationen zu den einzelnen Prozessen wird erweitert. Welche Ausgabespalten zur Ausgabe der Option -f gehören, ist im Abschnitt Ausgabe näher erläutert. Enthält der Kommandoname eines Prozesses nichtdruckbare Zeichen, so wird der Kommandoname in eckige Klammern [ ] eingeschlossen. Wird die Option -f ohne weitere Optionen angegeben, so beziehen sich die Informationen auf Prozesse, die mit der kontrollierenden Datensichtstation verbunden sind.
Es werden nur Informationen über Prozesse ausgegeben, deren Prozessgruppenführer in grplist angegeben werden. grplist ist eine Liste der Prozessnummern von Prozessgruppenführern. grplist hat folgendes Format: Die Nummern werden durch ein Komma getrennt, oder die Liste wird in Anführungszeichen eingeschlossen "...", wobei die Nummern dann durch Komma und/oder Leerzeichen getrennt werden können.
Es werden nur Informationen über Prozesse ausgegeben, deren reale Prozessgruppenführer in grplist angegeben werden. grplist ist eine Liste der Prozessnummern von Prozessgruppenführern. grplist hat folgendes Format: Die Nummern werden durch ein Komma getrennt, oder die Liste wird in Anführungszeichen eingeschlossen "...", wobei die Nummern dann durch Komma und/oder Leerzeichen getrennt werden können.
Es werden zusätzlich die Kennummer der Sitzung und Kennummer der Prozessgruppe ausgegeben.
(l - long list) Es werden umfassende Informationen zu den einzelnen Prozessen ausgegeben. Welche Ausgabespalten zur Ausgabe der Option -l gehören, ist im Abschnitt Ausgabe näher erläutert. Wird die Option -l ohne weitere Optionen angegeben, so beziehen sich die Informationen auf Prozesse, die mit der kontrollierenden Datensichtstation verbunden sind.
Es wird die bei namelist angegebene Systemdatei anstelle der Standarddatei verwendet.
Gibt die Informationen gemäß den bei format angegebenen Definitionen aus (siehe Abschnitt „Benutzerformatierte Ausgabe“).
Es werden nur Informationen zu Prozessen ausgegeben, deren Prozessnummern in proclist angegeben sind. proclist ist eine Liste von Prozessnummern. Die Nummern werden durch ein Komma getrennt, oder die Liste wird in Anführungszeichen eingeschlossen "...", wobei die Nummern dann durch Komma und/oder Leerzeichen getrennt werden können.
Es werden nur Informationen über Prozesse ausgegeben, die zu einer in sesslist angegeben Sitzung gehören. sesslist ist eine Liste von Sitzungs-Kennummern. sesslist hat folgendes Format: Die Nummern werden durch ein Komma getrennt, oder die Liste wird in Anführungszeichen eingeschlossen "...", wobei die Nummern dann durch Komma und/oder Leerzeichen getrennt werden können.
Es werden nur Informationen über Prozesse ausgegeben, die mit den in termlist genannten Datensichtstationen verbunden sind. termlist ist eine Liste von Datensichtstationen. Die Datensichtstationen können auf zwei Arten angegeben werden: entweder mit ihrem Gerätenamen (z.B. term/tty004) oder, falls der Gerätename aus einer Zusammensetzung mit tty besteht, nur mit der Nummer (z.B. 004). Die Angaben zu den Datensichtstationen werden durch ein Komma getrennt, oder die Liste wird in Anführungszeichen eingeschlossen "...", wobei die Einträge dann durch Komma und/oder Leerzeichen getrennt werden können.
Es wird zusätzlich die BS2000-TSN der Prozesse ausgegeben. -T kann zusammen mit anderen Optionen angegeben werden, -T wirkt bei allen Optionen außer der Option -o.
Es werden nur Informationen über Prozesse ausgegeben, deren Prozesseigentümer in userlist angegeben sind. userlist ist eine Liste von Benutzernummern bzw. Benutzerkennungen. Die Angaben in userlist werden durch ein Komma getrennt, oder die Liste wird in Anführungszeichen eingeschlossen "...", wobei die Einträge dann durch Komma und/oder Leerzeichen getrennt werden können.
Es werden nur Informationen über Prozesse ausgegeben, deren reale Prozesseigentümer in userlist angegeben sind. userlist ist eine Liste von Benutzernummern bzw. Benutzerkennungen. Die Angaben in userlist werden durch ein Komma getrennt, oder die Liste wird in Anführungszeichen eingeschlossen "...", wobei die Einträge dann durch Komma und/oder Leerzeichen getrennt werden können. |
Standard-Ausgabe (stdout)
Im Folgenden werden die Überschriften und die Bedeutung der Spalten in der Ausgabe von ps erläutert, wenn nicht die Option -o gesetzt ist. Die Buchstaben in Klammern bezeichnen die Option, bei der die entsprechende Spalte in der Ausgabe erscheint. Die Angabe alle bedeutet, dass die Spalte bei allen Optionen erscheint. Beachten Sie bitte, dass Sie mit den Optionen -c, -j, -f und -l nur bestimmen, welche Informationen Sie zu einem Prozess erhalten, nicht aber zu welchem Prozess. F (l) Flags des Prozesses (hexadezimal und additiv). Die Flags sind maschinenabhängig und werden deshalb hier nicht angegeben. S (l) Status des Prozesses.
Prozess schläft, wartet auf ein Ereignis
Prozess ist ablaufbereit
Prozess ist im Entstehen
Prozess ist beendet, der Endestatus wurde aber vom Vaterprozess noch nicht durch einen wait()-Systemaufruf abgefragt
Ein überwachter Prozess ist gestoppt
Prozess wartet auf mehr Speicherplatz UID ( f, l) (UID - user ID) Benutzernummer des Prozesseigentümers. Wenn die Option -f gesetzt ist, wird statt der UID die Benutzerkennung ausgegeben. Es werden nur die ersten 7 Zeichen der Benutzerkennung ausgegeben. PID (alle) (PID - process ID) Prozessnummer. Jeder Prozess erhält zum Zeitpunkt seiner Erzeugung eine eindeutig bestimmte Prozessnummer. Unter dieser Nummer kann z.B. der Prozess mit kill beendet werden. TSN (T) (TSN - task sequence number) BS2000-TSN des Prozesses. PPID ( f, l) (PPID - parent process ID) Prozessnummer des Vaterprozesses. PGID (j) (PGID - process group ID) Kennummer der Prozessgruppe. SID (j) (SID - session ID) Kennummer der Sitzung. C ( f, l) Prozessor-Auslastung für das Scheduling. CLS (c) Scheduling-Gruppe (Prozesse, die im Zeitscheibenverfahren verarbeitet werden). PRI (l,c) Prioritätswert des Prozesses. Höhere Zahlen bedeuten normalerweise niedrigere Priorität. Wurde jedoch -c angegeben, so bedeuten höhere Zahlen höhere Priorität. NI (l) Wert, mit dem die Prozess-Priorität verändert wurde (siehe nice). Nur Prozesse der Klasse time-sharing haben einen solchen Wert. ADDR (l) Adresse (physikalische Seiten-Frame-Nummer) des Benutzerbereichs, falls resident, andernfalls die Plattenadresse des ausgelagerten Prozesses. SZ (l) Die Größe des Speicherabbildes (core-image) des Prozesses in Blocks. WCHAN (l) Adresse des Ereignisses, auf das der Prozess wartet. Wenn die Spalte leer ist, läuft der Prozess. STIME ( f) Startzeit des Prozesses. Innerhalb der ersten 24 Stunden wird die Uhrzeit ausgegeben, danach das Datum. TTY (alle) Die kontrollierende Datensichtstation des Prozesses. Falls der Prozess nicht von einer Datensichtstation kontrolliert wird, wird ein Fragezeichen ? ausgegeben. TIME (alle) Gesamte Ausführungszeit des Prozesses in Minuten und Sekunden. COMD (alle) Der Name des Kommandos. Wenn die Option -f gesetzt ist, wird der vollständige Kommandoname ausgegeben. Prozesse, die bereits beendet sind, deren Endestatus aber von von ihrem Vaterprozess noch nicht durch einen wait()-Systemaufruf abgefragt wurde, werden als <defunct> gekennzeichnet. Wenn termlist, proclist, userlist oder grplist nicht angegeben wurde, überprüft ps die Standard-Ein-/Ausgabe sowie die Standard-Fehlerausgabe in dieser Reihenfolge, um die kontrollierende Datensichtstation zu ermitteln. Es werden dann Informationen zu allen Prozessen ausgegeben, die von dieser Datensichtstation kontrolliert werden. Falls diese drei Kanäle umgeleitet wurden, findet ps keine kontrollierende Datensichtstation und gibt daher auch keine Information aus. |
Benutzerformatierte Ausgabe
Mit der Option -o Jede Variable hat einen Standardheader. Der Standardheader kann umbenannt werden, d.h. einen neuen Headertext durch Anfügen von Gleichheitszeichen „=“ und den neuen Namen erhalten. Die in format angegebenen Variablen werden nebeneinander auf die Standardausgabe geschrieben. Die einzelnen Feldbreiten sind dabei abhängig von der Länge der Standardheader. Ist der Text eines Headers null, z.B. -o user=, wird mindestens die Breite des Standardheaders verwendet. Folgende Variablen können in format angegeben werden, den Variablen wird der in Klammern angegebene Standardheader zugeordnet, wenn nicht anders über -o angegeben.: ruser (RUSER) die reelle Benutzerkennung des Prozesses. Wenn sie ermittelt werden kann und die Feldbreite es erlaubt, wird sie textartig dargestellt, sonst dezimal. user (USER) die effektive Benutzerkennung des Prozesses. Wenn sie ermittelt werden kann und die Feldbreite es erlaubt, wird sie textartig dargestellt, sonst dezimal. rgroup (RGROUP) die reelle Gruppenkennung des Prozesses. Wenn sie ermittelt werden kann und die Feldbreite es erlaubt, wird sie textartig dargestellt, sonst dezimal. group (GROUP) die effektive Gruppenkennung des Prozesses. Wenn sie ermittelt werden kann und die Feldbreite es erlaubt, wird sie textartig dargestellt, sonst dezimal. pid (PID) der Dezimalwert der Prozessnummer (process id) ppid (PPID) der Dezimalwert der Vaterprozessnummer (parent process id) pgid (PGID) der Dezimalwert der Prozessgruppennummer (process group id) pcpu (%CPU) der Prozentwert der verbrauchten CPU-Zeit vsz (VSZ) der Dezimalwert des Speicherbedarfs des Prozesses, in Kilobyte nice (NI) der Dezimalwert der System Scheduling Priorität etime (ELAPSED) Zeit, seit der der Prozess läuft, angegeben in [[dd-]hh:]mm:ss time (TIME) Zeit, den den gesammelten CPU-Verbrauch für den Prozess angibt tty (TT) Name des Terminals, auf dem der Prozess läuft comm (COMMAND) Name des Kommandos, das ausgeführt wird, in textartiger Form (es können auch Leerzeichen enthalten sein) args (COMMAND) Kommando mit allen Argumenten, in textartiger Form (es können auch Leerzeichen tsn (TSN) BS2000-TSN des Prozesses |
Variable
COLUMNS Wenn diese Variable gesetzt ist, dann wird ihr Wert für die Definition der Breite des Editierfensters beim Editiermodus der POSIX-Shell und für die Ausgabe der select-Liste verwendet. |
Internationale Umgebung
Die folgenden Umgebungsvariablen beeinflussen die Ausführung des Kommandos ps: LANG Gibt einen Standardwert für die Variablen für die internationale Umgebung an, die nicht gesetzt oder Null sind. Ist LANG nicht gesetzt oder Null, wird der entsprechende Standardwert der internationalen Umgebung verwendet. Enthält eine der Internationalisierungsvariablen eine ungültige Einstellung, verhält sich das Kommando so, als sei keine der Variablen definiert worden. LC_ALL Ist diese Variable auf einen Wert gesetzt, d. h. ist sie nicht leer, überschreibt dieser Wert die Werte aller übrigen Internationalisierungsvariablen. LC_COLLATE Beeinflusst die Sortierreihenfolge. LC_CTYPE Legt die internationale Umgebung für die Interpretation der Byte-Folgen eines Datentexts als Zeichen fest (z.B. Singlebytezeichen im Unterschied zu Mehrbytezeichen in Argumenten und Eingabedateien) sowie die Einteilung der Zeichen in Groß- und Kleinbuchstaben und deren Übereinstimmung. LC_MESSAGES Legt die internationale Umgebung für Format und Inhalt der Diagnosemeldungen fest, die in die Standardfehlerausgabe geschrieben werden. LC_TIME Bestimmt das Format der Zeitangaben bei Verwendung der Option -f. NLSPATH Legt den Pfad der Meldungsdateien für LC_MESSAGES fest. |
Beispiel 1
Durch einen Aufruf von ps mit der Option -l wird eine ausführliche Liste über alle laufenden Prozesse auf der kontrollierenden Datensichtstation ausgegeben:
Jetzt soll das find-Kommando durch einen Aufruf von kill mit Angabe der in der Spalte PID angezeigten Prozessnummer abgebrochen werden. Ein erneuter Aufruf von ps zeigt anschließend, dass der betreffende Prozess nicht mehr existiert.
|
Beispiel 2
Benutzerformatierte Ausgabe des ps-Kommandos: Ausgabe von USER, PID, PPID (soll den neuen Namen FATHER erhalten) und Ausgabe der Argumente.
|
Beispiel 3
Es soll die nur BS2000-TSN der aktuellen Shell (ohne Überschrift) ausgegeben werden.
Zum Vergleich:
|
Siehe auch
kill, nice |