BEZEICHNUNG
ps - einen Schnappschuss der aktuellen Prozesse darstellen.
ÜBERSICHT
ps [Optionen]
BESCHREIBUNG
ps zeigt Informationen zu einer Auswahl aktiver Prozesse an. Falls Sie eine wiederholte Aktualisierung der Auswahl und der angezeigten Informationen benötigen, verwenden Sie stattdessen top.
Diese Version von ps akzeptiert verschiedene Arten von Optionen:
1 |
UNIX-Optionen, die gruppiert sein können und denen ein Bindestrich vorangestellt werden darf. | ||
2 |
BSD-Optionen, die gruppiert sein können und denen kein Bindestrich vorangestellt werden muss. | ||
3 |
Lange GNU-Optionen, denen zwei Bindestriche vorangestellt werden müssen. |
Optionen verschiedener Typen können beliebig gemischt werden, was aber auch Konflikte hervorrufen kann. Es gibt einige gleichbedeutende Optionen, die funktionell identisch sind. Das beruht auf den zahlreichen Standards und Implementationen von ps, zu denen das vorliegende ps kompatibel ist.
Standardmäßig wählt ps alle Prozesse mit der effektiven Benutzerkennung (euid=EUID) des aktuellen Benutzers aus, die dem gleichen Terminal wie der Aufrufende zugeordnet sind. Es zeigt die Prozesskennung (pid=PID), das dem Prozess zugeordnete Terminal (tname=TTY), die kumulierte CPU-Zeit (time=TIME) im Format [TT-]hh:mm:ss sowie den Namen des ausführbaren Programms an. Die Ausgabe wird standardmäßig nicht sortiert.
Durch die Verwendung von Optionen im BSD-Stil wird der Prozessstatus (stat=STATUS) zur standardmäßigen Anzeige hinzugefügt und die Befehlsargumente (args=BEFEHL) anstelle des Namens der ausführbaren Datei angezeigt. Sie können dies in der Umgebungsvariable PS_FORMAT außer Kraft setzen. Durch die Verwendung von Optionen im BSD-Stil zeigt die Prozessauswahl außerdem Prozesse auf anderen Terminals (TTYs) an, deren Besitzer Sie selbst sind; alternativ könnte dies als Setzen der Auswahl auf alle Prozesse beschrieben werden, aus denen aber Prozesse herausgefiltert werden, die anderen Benutzern gehören oder nicht auf einem Terminal laufen. Diese Effekte werden nicht berücksichtigt, wenn Optionen nachfolgend als »gleichbedeutend« beschrieben werden, so wird -M als gleichbedeutend mit Z usw. aufgefasst.
Außer in den nachfolgend beschriebenen Ausnahmen sind Optionen zur Prozessauswahl additiv. Die standardmäßige Auswahl wird verworfen und dann werden die ausgewählten Prozesse zur Gruppe der anzuzeigenden Prozesse hinzugefügt. Ein Prozess wird also dann angezeigt, wenn er irgendeinem der angegebenen Auswahlkriterien entspricht.
BEISPIELE
Alle Prozesse im System in der Standard-Syntax anzeigen:
ps -e
ps -ef
ps -eF
ps -ely
Alle Prozess im System in der BSD-Syntax anzeigen:
ps ax
ps axu
Einen Prozessbaum ausgeben:
ps -ejH
ps axjf
Informationen zu Threads erhalten:
ps -eLf
ps axms
Sicherheitsinformationen erhalten:
ps -eo
euser,ruser,suser,fuser,f,comm,label
ps axZ
ps -eM
Alle Prozesse im System, die
mit Root-Rechten laufen
(reale & effektive Kennung), in einem
benutzerdefinierten Format
anzeigen:
ps -U root -u root u
Alle Prozesse in einem benutzerdefinierten Format anzeigen:
ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
ps -Ao pid,tt,user,fname,tmout,f,wchan
Nur die Prozesskennungen (PIDs) von syslogd ausgeben:
ps -C syslogd -o pid=
Nur den Namen des Prozesses mit der Kennung 42 ausgeben:
ps -q 42 -o comm=
EINFACHE PROZESSAUSWAHL
a |
hebt die Einschränkung »nur Sie selbst« des BSD-Stils auf, die für die Gruppe aller Prozesse gilt, wenn einige BSD-artige Optionen (ohne »-«) verwendet werden oder wenn die Einstellung der Prozessausführungsumgebung von ps BSD-ähnlich ist. Die auf diese Weise ausgewählte Prozessgruppe wird zusätzlich zu den bereits auf andere Weise ausgewählten Prozessen ausgewählt. Alternativ könnte dies so beschrieben werden, dass diese Option ps veranlasst, alle Prozesse mit einem Terminal (TTY) aufzulisten, oder alle Prozesse aufzulisten, wenn dies zusammen mit der Option x verwendet wird. | ||
-A |
wählt alle Prozesse aus. Gleichbedeutend mit -e. | ||
-a |
wählt alle Prozesse aus, außer sowohl Sitzungsleiter (siehe getsid(2)) als auch Prozesse, die keinem Terminal zugeordnet sind. | ||
-d |
wählt alle Prozesse außer Sitzungsleiter aus. |
--deselect
wählt alle Prozesse aus, außer jene, welche die angegebenen Bedingungen erfüllen (negiert die Auswahl). Gleichbedeutend mit -N.
-e |
wählt alle Prozesse aus. Gleichbedeutend mit -A. | ||
g |
wählt wirklich alle, selbst die Sitzungsleiter. Dieser Schalter ist veraltet und könnte in zukünftigen Veröffentlichungen nicht mehr zur Verfügung stehen. Es wird normalerweise vom Schalter a impliziert und ist nur nützlich, wenn es in einer SunOs-Prozessausführungsumgebung ausgeführt wird. | ||
-N |
wählt alle Prozesse aus, außer jene, welche die angegebenen Bedingungen erfüllen (negiert die Auswahl). Gleichbedeutend mit --deselect. | ||
T |
wählt alle Prozesse aus, welche diesem Terminal zugeordnet sind. Gleichbedeutend mit der Option t ohne Argumente. | ||
r |
schränkt die Auswahl nur auf laufende Prozesse ein. | ||
x |
hebt die Einschränkung »muss ein TTY haben« des BSD-Stils auf, die für die Gruppe aller Prozesse gilt, wenn einige BSD-artige Optionen (ohne »-«) verwendet werden oder wenn die Einstellung der Prozessausführungsumgebung von ps BSD-ähnlich ist. Die auf diese Weise ausgewählte Prozessgruppe wird zusätzlich zu den bereits auf andere Weise ausgewählten Prozessen ausgewählt. Alternativ könnte dies so beschrieben werden, dass diese Option ps veranlasst, alle Prozesse aufzulisten, deren Besitzer Sie selbst sind (gleiche EUID wie ps), oder alle Prozesse aufzulisten, wenn dies zusammen mit der Option a verwendet wird. |
PROZESSAUSWAHL NACH LISTE
Diese Optionen akzeptieren ein einzelnes Argument in der Form einer durch Leerräume oder Kommata getrennten Liste. Dies kann mehrmals angegeben werden. Beispiel: ps -p "1 2" -p 3,4
123 |
ist gleichbedeutend mit --pid 123. |
|||
+123 |
ist gleichbedeutend mit --sid 123. |
|||
-123 |
Select by process group ID (PGID). |
-C Befehlsliste
wählt nach Befehlsnamen aus. Dadurch werden die Prozesse ausgewählt, deren Namen der ausführbaren Dateien in der Befehlsliste aufgeführt sind. Achtung: Der Befehlsname entspricht nicht der Befehlszeile. Frühere Versionen von procps und der Kernel kürzten diesen Befehlsnamen auf 15 Zeichen. Diese Einschränkung gibt es in beiden nicht mehr. Falls Sie sich nur auf 15 Zeichen beziehen, erhalten Sie keinen Treffer mehr.
-G Gruppenliste
wählt nach realer Gruppenkennung (RGID) oder nach Namen aus. Dadurch werden die Prozesse ausgewählt, deren realer Gruppenname oder -kennung in der Gruppenliste aufgeführt ist. Die reale Gruppenkennung identifiziert die Gruppe des Benutzers, der den Prozess erstellt hat, siehe getgid(2).
-g Gruppenliste
wählt nach Sitzung ODER effektivem Gruppennamen aus. Die Auswahl nach Sitzung wird durch zahlreiche Standards angegeben, aber die Auswahl nach effektiver Gruppe ist das logische Verhalten, das verschiedene andere Betriebssysteme verwenden. Diese Version von ps wählt nach Sitzung aus, wenn die Liste vollständig numerisch ist (wie es bei Sitzungen der Fall ist). Mit Gruppenkennungen (ID-Nummern) funktioniert es nur dann, wenn auch einige Gruppennamen angegeben werden. Siehe die Optionen -s und --group.
--Group Gruppenliste
wählt nach realer Gruppenkennung (RGID) oder Name aus. Gleichbedeutend mit -G.
--group Gruppenliste
wählt nach effektiver Gruppenkennung (EGID) oder Name aus. Dadurch werden die Prozesse ausgewählt, deren effektiver Gruppenname oder -kennung in der Gruppenliste aufgeführt ist. Die effektive Gruppenkennung bezieht sich auf die Gruppe, deren Dateizugriffsrechte vom Prozess genutzt werden (siehe getegid(2)). Die Option -g ist häufig eine Alternative zu --group.
p PID-Liste
wählt nach Prozesskennung (PID) aus. Gleichbedeutend mit -p und --pid.
-p PID-Liste
wählt nach Prozesskennung (PID) aus. Dadurch werden die Prozesse ausgewählt, deren Prozesskennungen (ID-Nummern) in der PID-Liste aufgeführt sind. Gleichbedeutend mit p und --pid.
--pid PID-Liste
wählt nach Prozesskennung (PID) )aus. Gleichbedeutend mit -p und p.
--ppid PID-Liste
wählt nach Kennung des Elternprozesses aus. Dadurch werden die Prozesse ausgewählt, für die die Kennung eines Elternprozesses in der PID-Liste aufgeführt ist. Das bedeutet, dass Prozesse ausgewählt werden, die Kindprozesse der Prozesse in der PID-Liste sind.
q PID-Liste
wählt nach Prozesskennung (PID) aus (schneller Modus). Gleichbedeutend mit -q und --quick-pid.
-q PID-Liste
wählt nach Prozesskennung (PID) aus (schneller Modus). Dadurch werden die Prozesse ausgewählt, deren Prozesskennungen (ID-Nummern) in der PID-Liste aufgeführt sind. Mit dieser Option liest ps die notwendigen Informationen nur für die in der PID-Liste aufgeführten Prozesskennungen und wendet keine zusätzlichen Filterregeln an. Die Reihenfolge der Prozesskennungen ist unsortiert und wird beibehalten. In diesem Modus sind keine weiteren Auswahloptionen, Sortierungen und Waldtyp-Auflistungen erlaubt. Gleichbedeutend mit q und --quick-pid.
--quick-pid PID-Liste
wählt nach Prozesskennung (PID) aus (schneller Modus). Gleichbedeutend mit -q und q.
-s Sitzungsliste
wählt nach Sitzungskennung aus. Dies wählt alle Prozesse aus, deren Sitzungskennung in der Sitzungsliste enthalten ist.
--sid Sitzungsliste
wählt nach Sitzungskennung aus. Gleichbedeutend mit -s.
t TTY-Liste
wählt nach TTY aus. Dies ist fast gleichbedeutend mit -t und --tty, kann aber auch mit einer leeren TTY-Liste verwendet werden, um das ps zugeordnete Terminal zu bezeichnen. Die Verwendung der Option T wird als sauberer als die Option t mit einer leeren TTY-Liste betrachtet.
-t TTY-Liste
wählt nach TTY aus. Dadurch werden die Prozesse ausgewählt, die den in der TTY-Liste angegebenen Terminals zugeordnet sind. Terminals (TTYs oder Bildschirme für Textausgabe) können in verschiedenen Formen angegeben werden: /dev/ttyS1, ttyS1, S1. Ein einfaches »-« kann verwendet werden, um Prozesse auszuwählen, die keinem Terminal zugeordnet sind.
--tty TTY-Liste
wählt nach Terminal aus. Gleichbedeutend mit -t und t.
U Benutzerliste
wählt nach effektiver Benutzerkennung (EUID) oder Name aus. Dadurch werden die Prozesse ausgewählt, deren effektiver Benutzername oder -kennung in der Benutzerliste aufgeführt ist. Die effektive Benutzerkennung bezieht sich auf den Benutzer, dessen Dateizugriffsrechte vom Prozess genutzt werden (siehe geteuid(2)). Gleichbedeutend mit -u und --user.
-U Benutzerliste
wählt nach realer Benutzerkennung (RUID) oder nach Namen aus. Dadurch werden die Prozesse ausgewählt, deren realer Benutzername oder -kennung in der Benutzerliste aufgeführt ist. Die reale Benutzerkennung identifiziert den Benutzer, der den Prozess erstellt hat, siehe getuid(2).
-u Benutzerliste
wählt nach effektiver Benutzerkennung (EUID) oder Name aus. Dadurch werden die Prozesse ausgewählt, deren effektiver Benutzername oder -kennung in der Benutzerliste aufgeführt ist.
Die effektiver Benutzerkennung beschreibt den Benutzer, dessen Dateizugriffsrechte vom Prozess genutzt werden (siehe geteuid(2)). Gleichbedeutend mit U und --user.
--User Benutzerliste
wählt nach realer Benutzerkennung (RUID) oder Name aus. Gleichbedeutend mit -U.
--user Benutzerliste
wählt nach effektiver Benutzerkennung (EUID) oder Name aus. Gleichbedeutend mit -u und U.
STEUERUNG DES AUSGABEFORMATS
Diese Optionen werden dazu verwendet, die von ps angezeigten Informationen auszuwählen. Die Ausgabe kann je nach Prozessausführungsumgebung variieren.
-c |
zeigt verschiedene Scheduler-Informationen für die Option -l an. |
--context
zeigt das Format des Sicherheitskontexts an (für SELinux).
-f |
zeigt eine Auflistung im Vollformat an. Diese Option kann mit vielen anderen Optionen im UNIX-Stil kombiniert werden, um zusätzliche Spalten hinzuzufügen. Außerdem bewirkt die Option, dass die Befehlsargumente ausgegeben werden. Wenn Sie die Option zusammen mit -L verwenden, werden die Spalten NLWP (Anzahl der Threads) und LWP (Threadkennung) hinzugefügt. Siehe die Option c sowie die Formatschlüsselwörter args und comm. | ||
-F |
zeigt eine Auflistung im erweiterten Vollformat an. Siehe die Option -f, welche -F impliziert. |
--format Format
zeigt im benutzerdefinierten Format an. Gleichbedeutend mit -o und o.
j |
BSD-Jobsteuerung-Format. | ||
-j |
Job-Format. | ||
l |
zeigt das lange BSD-Format an. | ||
-l |
Langes Format. Die Option -y ist oft dafür nützlich. | ||
-M |
fügt eine Spalte mit sicherheitsrelevanten Daten hinzu. Gleichbedeutend mit Z (für SELinux). |
O Format
ist ein vorgeladenes o (überladen). Die BSD-Option O kann wie -O agieren (benutzerdefiniertes Ausgabeformat mit einigen vordefinierten häufig genutzten Feldern) oder dazu verwendet werden, die Sortierreihenfolge anzugeben. Das Verhalten dieser Option wird heuristisch bestimmt. Um das gewünschte Verhalten sicherzustellen (Sortierung oder Formatierung), geben Sie die Option auf eine andere Weise an (zum Beispiel mit -O oder --sort). Wenn Sie sie als Formatierungsoption verwenden, ist sie in der BSD-Prozessausführungsumgebung gleichbedeutend mit -O.
-O Format
ist ähnlich zu -o, aber mit einigen Standardspalten vorgeladen. Gleichbedeutend mit -o PID,Format,Status,tName,Zeit,Befehl oder -o PID,Format,tName,Zeit,Befehl, siehe -o nachfolgend.
o Format
legt das benutzerdefinierte Format fest. Gleichbedeutend mit -o und --format.
-o Format
legt das benutzerdefinierte Format fest. Das Format ist ein einzelnes Argument in der From einer durch Leerräume oder Kommata getrennten Liste, die eine Möglichkeit bietet, individuelle Ausgabespalten anzugeben. Die erkannten Schlüsselwörter sind im nachfolgenden Abschnitt STANDARD-FORMATBEZEICHNER beschrieben. Kopfzeilen dürfen nach Wunsch umbenannt werden (ps -o PID,ruser=echter_Benutzer -o comm=Befehl). Falls alle Spaltenüberschriften leer sind (ps -o pid= -o comm=), wird keine Kopfzeile ausgegeben. Die Spaltenbreite wird bei breiteren Überschriften angepasst; das kann zur Verbreiterung von Spalten wie WCHAN (ps -o PID,wchan= WIDE-WCHAN-COLUMN -o comm) angewendet werden. Eine explizite Steuerung der Breite ist ebenfalls möglich (ps opid,wchan:42, cmd). Das Verhalten von ps -o pid=X,comm=Y variiert je nach Prozessausführungsumgebung; die Ausgabe kann in einer Spalte namens »X,comm=Y« oder in zwei Spalten namens »X« und »Y« erfolgen. Im Zweifel sollten Sie die Option -o mehrmals verwenden. Mit der Umgebungsvariable PS_FORMAT können Sie eine Vorgabe nach Ihrem Wunsch festlegen; DefSysV und DefBSD sind Makros, die Sie zur Wahl der standardmäßigen UNIX- oder BSD-Spalten verwenden können.
-P |
Add a column showing psr. | ||
s |
zeigt im Signalformat an. | ||
u |
zeigt im benutzerorientierten Format an. | ||
v |
zeigt im virtuellen Speicherformat an. | ||
X |
zeigt im Registerformat an. | ||
-y |
zeigt keine Schalter an; statt addr wird rss angezeigt. Diese Option kann nur zusammen mit -l verwendet werden. | ||
Z |
fügt eine Spalte mit sicherheitsrelevanten Daten hinzu. Gleichbedeutend mit -M (für SELinux). |
AUSGABE-MODIFIKATOREN
c |
zeigt den echten Befehlsnamen an. Dieser wird aus dem Namen der ausführbaren Datei statt aus dem Wert von argv abgeleitet. Befehlsargumente und deren eventuelle Änderungen werden daher nicht angezeigt. Diese Option verwandelt das Formatschlüsselwort args effektiv in das Formatschlüsselwort comm; sie ist mit der Formatoption -f und den verschiedenen Formatoptionen im BSD-Stil nützlich, welche alle normalerweise die Befehlsargumente anzeigen. Siehe die Option -f sowie die Formatschlüsselwörter args und comm. |
--cols n
legt die Bildschirmbreite fest.
--columns n
legt die Bildschirmbreite fest.
--cumulative
fügt einige Daten toter Kindprozesse hinzu (als Summe mit den Elternprozessen).
-D Format
Set the date format of the lstart field to format. This format is parsed by strftime(3) and should be a maximum of 24 characters to not mis-align columns.
--date-format Format
ist gleichbedeutend mit -D.
e |
zeigt die Umgebung nach dem Befehl an. | ||
f |
zeigt die Prozesshierarchie in ASCII-Art an (Wald). |
--forest
zeigt einen Prozessbaum in ASCII-Art an.
h |
zeigt keine Kopfzeilen an (oder eine Kopfzeile pro Bildschirm in der BSD-Prozessausführungsumgebung). Die Option h ist problematisch. Das standardmäßige ps in BSD verwendet diese Option, um eine Kopfzeile auf jeder Seite der Ausgabe anzuzeigen, ältere Linux-Versionen von ps hingegen unterdrücken damit die Anzeige der Kopfzeile komplett. Diese Version von ps gibt keine Kopfzeilen aus und folgt damit dem Linux-Verhalten. Nur wenn die BSD-Prozessausführungsumgebung ausgewählt ist, wird eine Kopfzeile auf jeder Seite der Ausgabe angezeigt. Unabhängig von der aktuellen Prozessausführungsumgebung können Sie die Langoptionen --headers bzw. --no-headers dazu verwenden, um die Anzeige der Kopfzeilen auf jeder Seite zu aktivieren oder vollständig zu deaktivieren. | ||
-H |
zeigt die Prozesshierarchie an (Waldansicht). |
--headers
wiederholt die Kopfzeilen jeweils einmal pro ausgegebener Seite.
k Spez |
legt die Sortierreihenfolge fest. Die Sortierungssyntax ist [+|-]Schlüssel[,[+|-]Schlüssel[, …]]. Wählen Sie einen aus mehreren Buchstaben bestehenden Schlüssel aus dem Abschnitt STANDARD-FORMATBEZEICHNER. Das »+« ist optional, da die Standardsortierung nach der ansteigenden numerischen oder lexikographischen Reihenfolge vorgenommen wird. Gleichbedeutend mit --sort. |
Beispiele:
ps jaxkuid,-ppid,+pid
ps axk comm o comm,args
ps kstart_time -ef
--lines n
legt die Bildschirmhöhe fest.
n |
aktiviert die numerische Ausgabe für WCHAN und USER (einschließlich aller UID- und GID-Typen). |
--no-headers
unterdrückt die Ausgabe jeglicher Kopfzeilen. --no-heading ist ein Alias für diese Option.
O Reihenfolge
legt die Sortierreihenfolge fest (überladen). Die BSD-Option O kann wie -O agieren (benutzerdefiniertes Ausgabeformat mit einigen vordefinierten häufig genutzten Feldern) oder dazu verwendet werden, die Sortierreihenfolge anzugeben. Das Verhalten dieser Option wird heuristisch bestimmt. Um das gewünschte Verhalten sicherzustellen (Sortierung oder Formatierung), geben Sie die Option auf eine andere Weise an (zum Beispiel mit -O oder --sort).
Für die Sortierung ist O[+|-]k1[,[+|-]k2[, …]] die Syntax der veralteten BSD-Option O. Es ordnet die Prozessliste anhand der mehrstufigen Sortierung gemäß der einbuchstabigen Kurzschlüssel k1, k2, … , die nachfolgend im Abschnitt VERALTETE SORTIERSCHLÜSSEL beschrieben sind. Das »+« ist derzeit optional, es wiederholt nur die Standardrichtung eines Schlüssels, aber kann dabei helfen, Sortierungen nach O von einem Format O zu unterscheiden. Das »-« kehrt die Richtung nur für den Schlüssel um, dem es vorangestellt ist.
--rows n
legt die Bildschirmhöhe fest.
S |
addiert Informationen, wie die CPU-Nutzung, aus den Informationen toter Kindprozesse und denen ihrer Elternprozesse. Dies ist nützlich, wenn Sie ein System untersuchen wollen, in dem ein Elternprozess fortwährend kurzlebige Kindprozesse mit fork() erstellt, um arbeiten zu können. |
--sort Spez
legt die Sortierreihenfolge fest. Die Sortierungssyntax ist [+|-]Schlüssel[,[+|-]Schlüssel[, …]]. Wählen Sie einen aus mehreren Buchstaben bestehenden Schlüssel aus dem Abschnitt STANDARD-FORMATBEZEICHNER. Das »+« ist optional, da die Standardsortierung nach der aufsteigenden numerischen oder lexikographischen Reihenfolge vorgenommen wird. Gleichbedeutend mit k. Beispiel: ps jax --sort=uid,-ppid,+pid
--signames
zeigt Signalmasken mittels abgekürzter Signalnamen an und passt die Spalte an. Falls die Spaltenbreite nicht alle Signale anzeigen kann, endet die Spalte mit einem Plus-Zeichen (»+«). Spalten, die nur einen Bindestrich enthalten, haben keine Signale.
w |
aktiviert die breite Ausgabe. Verwenden Sie diese Option zweimal, um die Breite auf unbegrenzt zu setzen. | ||
-w |
aktiviert die breite Ausgabe. Verwenden Sie diese Option zweimal, um die Breite auf unbegrenzt zu setzen. |
--width n
legt die Bildschirmbreite fest.
THREAD-ANZEIGE
H |
zeigt Threads so an, als wären sie Prozesse. | ||
-L |
zeigt Threads an, eventuell mit den Spalten LWP und NLWP. | ||
m |
zeigt Threads nach Prozessen an. | ||
-m |
zeigt Threads nach Prozessen an. | ||
-T |
zeigt Threads an, möglicherweise mit einer SPID-Spalte. |
WEITERE INFORMATIONEN
--Hilfe Abschnitt
gibt eine Hilfemeldung aus. Das Argument Abschnitt kann eines aus simple, list, output, threads, misc oder all sein. Das Argument kann wie folgt auf einen der unterstrichenen Buchstaben gekürzt werden: s|l|o|t|m|a.
--info |
gibt Informationen zur Fehlerdiagnose aus. |
|||
L |
listet alle Formatbezeichner auf. |
|||
V |
gibt die Version von Procps-ng aus. |
|||
-V |
gibt die Version von Procps-ng aus. |
--version
gibt die Version von Procps-ng aus.
ANMERKUNGEN
Diese Version von ps basiert auf dem Auslesen virtueller Dateien in /proc. Diese Version von ps muss nicht setuid »kmem« sein oder zur Ausführung über irgendwelche Privilegien verfügen. Geben Sie dieser Version von ps keine besonderen Rechte.
Die CPU-Nutzung wird derzeit als der Prozentwert der während der gesamten Lebensdauer verwendeten Laufzeit ausgedrückt. Das ist nicht ideal und ist nicht zu den Standards konform, an denen sich ps ansonsten orientiert. Es ist unwahrscheinlich, dass die Summe der CPU-Nutzung 100% erreicht.
Die Felder SIZE und RSS zählen einige Teile des Prozesses nicht, wie die Seitentabellen, den Kernel-Stack, die Structs »thread_info« und »task_struct«. Dies ergibt üblicherweise mindestens 20 KiB Speicher, die immer belegt sind. SIZE ist die virtuelle Größe des Prozesses (Code+Daten+Stack).
Als <defunct> markierte Prozesse sind tote Prozesse (sogenannte »Zombies«). Diese sind deswegen noch vorhanden, weil deren Elternprozesse sie nicht sauber beendet haben. Diese Prozesse werden durch init(8) zerstört, sofern der Elternprozess existiert.
Falls der Benutzername länger ist als die Breite der Anzeigespalte, wird der Benutzername gekürzt. Mit den Formatierungsoptionen -o und -O können Sie die Breite anpassen.
Von Befehlszeilenoptionen wie ps -aux wird abgeraten, da sie zwei Standards vermischen. Entsprechend den POSIX- und UNIX-Standards bewirkt der vorstehende Befehl die Anzeige aller Prozesse mit einem TTY (im Allgemeinen die Befehle, die Benutzer ausführen) und zusätzlich aller Prozesse, die einem Benutzer namens x gehören. Existiert dieser Benutzer nicht, wird ps annehmen, dass Sie eigentlich ps aux meinten.
PROZESSSCHALTER
Die Summe dieser Werte wird in der Spalte »F« angezeigt, die durch den Ausgabebezeichner flags bereitgestellt wird:
1 |
mit fork() erstellt, aber nicht ausgeführt |
|||
4 |
Superuser-Privilegien verwendet |
PROZESSZUSTANDSCODES
Dies sind die verschiedenen Werte, welche die Ausgabebezeichner s, stat und state (Überschrift »STAT« oder »S«) anzeigen, um den Status eines Prozesses zu beschreiben:
D |
Nicht unterbrechbarer Schlafzustand (üblicherweise E/A) | ||
I |
Kernel-Thread im Leerlauf | ||
R |
Laufend oder lauffähig (in der Ausführungswarteschlange) | ||
S |
Unterbrechbarer Schlafzustand (auf den Abschluss eines Ereignisses wartend) | ||
T |
Durch Jobsteuersignal gestoppt | ||
t |
Durch Debugger während der Verfolgung gestoppt | ||
W |
Paging (ungültig seit Kernel 2.6.xx) | ||
X |
Tot (sollte niemals angezeigt werden) | ||
Z |
Defunktionaler (»Zombie«-) Prozess, beendet, aber durch seinen Elternprozess nicht aufgeräumt |
Für BSD-Formate und bei Verwendung des Schlüsselworts stat können zusätzliche Zeichen angezeigt werden:
< |
Hohe Priorität (nicht »nice« zu anderen Benutzern) | ||
N |
Niedrige Priorität (»nice« zu anderen Benutzern) | ||
L |
Hat im Speicher gesperrte Seiten (für Echtzeit- und benutzerdefinierte E/A) | ||
s |
Ist ein Sitzungsleiter | ||
l |
Ist multi-threaded (mittels CLONE_THREAD, wie es NPTL-Pthreads tun) | ||
+ |
Ist in der Vordergrund-Prozessgruppe |
VERALTETE SORTIERSCHLÜSSEL
Diese Schlüssel werden von der BSD-Option O verwendet (wenn diese zur Sortierung verwendet wird). Die GNU-Option --sort verwendet diese Schlüssel nicht, sondern die im nachfolgenden Abschnitt STANDARD-FORMATBEZEICHNER beschriebenen Schlüssel. Beachten Sie, dass die in der Sortierung verwendeten Werte die internen Werte sind, die ps nutzt, und nicht die »verarbeiteten« Werte, die in einigen der Ausgabeformat-Felder verwendet werden (zum Beispiel wird bei der Sortierung nach TTY anhand der Gerätenummern sortiert und nicht anhand des angezeigten Terminalnamens). Leiten Sie die Ausgabe von ps an den Befehl sort weiter, wenn Sie nach den verarbeiteten Werten sortieren wollen.
AIX-FORMATDESKRIPTOREN
Diese Version von ps unterstützt AIX-Formatdeskriptoren, die ähnlich den Formatierungscodes von printf(1) und printf(3) funktionieren. Die normale, standardmäßige Ausgabe kann folgendermaßen erzeugt werden: ps -eo "%p %y %x %c". Die NORMAL-Codes sind im nächsten Abschnitt beschrieben.
STANDARD-FORMATBEZEICHNER
Hier sind die verschiedenen Schlüsselwörter, die zum Steuern des Ausgabeformats (zum Beispiel mit der Option -o) oder zum Sortieren der ausgewählten Prozesse mit der GNU-artigen Option --sort verwendet werden können.
Beispiel: ps -eo pid,user,args --sort user
Diese Version von ps versucht, die meisten der in anderen Implementierungen von ps verwendeten Schlüsselwörter zu erkennen.
Die folgenden benutzerdefinierten Formatbezeichner dürfen Leerräume enthalten: args, cmd, comm, command, fname, ucmd, ucomm, lstart, bsdstart, start.
Einige Schlüsselwörter könnten nicht für die Sortierung verfügbar sein.
UMGEBUNGSVARIABLEN
Die folgenden
Umgebungsvariablen könnten ps beeinflussen:
COLUMNS
setzt die vorgegebene Bildschirmbreite außer Kraft.
LINES
setzt die vorgegebene Bildschirmhöhe außer Kraft.
PS_PERSONALITY
wird auf eines von »posix«, »old«, »linux«, »bsd«, »sun«, »digital« … gesetzt (siehe Abschnitt PROZESSAUSFÜHRUNGSUMGEBUNG nachfolgend).
CMD_ENV
wird auf eines von »posix«, »old«, »linux«, »bsd«, »sun«, »digital« … gesetzt (siehe Abschnitt PROZESSAUSFÜHRUNGSUMGEBUNG nachfolgend).
I_WANT_A_BROKEN_PS
erzwingt die Interpretation veralteter Befehlszeilen.
LC_TIME
Datumsformat.
LIBPROC_HIDE_KERNEL
Set this to any value to hide kernel threads normally displayed with the -e option. This is equivalent to selecting --ppid 2 -p 2 --deselect instead. Also works in BSD mode.
PS_COLORS
wird gegenwärtig nicht unterstützt.
PS_FORMAT
Außerkraftsetzung des vorgegebenen Ausgabeformats. Sie können dies auf eine Formatzeichenkette des Typs setzen, den Sie für die Option -o nutzen. Insbesondere die Werte DefSysV und DefBSD sind sinnvoll.
POSIXLY_CORRECT
Finde keine Entschuldigungen zum Ignorieren schlechter »Funktionen«.
POSIX2
Wenn auf »on« gesetzt, agiert es als POSIXLY_CORRECT.
UNIX95
Finde keine Entschuldigungen zum Ignorieren schlechter »Funktionen«.
_XPG
Zeigt kein nicht standardkonformes Verhalten bei CMD_ENV=irix.
Generell ist es keine gute Idee, diese Variablen zu setzen. Die einzige Ausnahme ist CMD_ENV oder PS_PERSONALITY, die für normale Systeme auf »Linux« gesetzt werden können. Ohne diese Einstellung folgt ps den nutzlosen und schlechten Teilen des Unix98-Standards.
PROZESSAUSFÜHRUNGSUMGEBUNG
FEHLER
The fields bsdstart and start will only show the abbreviated month name in English. The fields lstart and stime will show the abbreviated month name in the configured locale but may exceed the column width due to the different lengths for abbreviated month and day names across languages.
SIEHE AUCH
pgrep(1), pstree(1), top(1), strftime(3), proc(5).
STANDARDS
Diese Version von ps ist konform zu:
1 |
Version 2 der Single Unix Specification | ||
2 |
The Open Group Technical Standard Base Specifications, Ausgabe 6 | ||
3 |
IEEE Std 1003.1, Ausgabe 2004 | ||
4 |
X/Open System Interfaces Extension [UP XSI] | ||
5 |
ISO/IEC 9945:2003 |
AUTOR
ps wurde ursprünglich von lankeste [AT] fwi.nl">Branko Lankester geschrieben. johnsonm [AT] redhat.com">Michael K. Johnson überarbeitete es deutlich, damit es das Proc-Dateisystem nutzt, wobei einige Dinge dabei geändert wurden. mjshield [AT] nyx.edu">Michael Shields fügte die PID-Listen-Funktion hinzu. cblake [AT] bbn.com">Charles Blake fügte die mehrstufige Sortierung, die Bibliothek im Dirent-Stil, die Datenbank zum Zuweisen von Gerätenamen zu deren Nummern, die näherungsweise Binärsuche direkt in System.map hinzu sowie bereinigte größere Teile des Codes und der Dokumentation. David Mossberger-Tang schrieb die generische BFD-Unterstützung für psupdate. albert [AT] users.net">Albert Cahalan überarbeitete ps für vollständige Unix98- und BSD-Unterstützung, zusammen mit einigen Hacks bezüglich veralteter and fremder Syntax.
Bitte schicken Sie Fehlermeldungen (auf Englisch) an procps [AT] freelists.org">procps [AT] freelists.org. Dafür ist keine Registrierung erforderlich.