Es hat zahlreiche Optionen zur Manipulation seiner Ausgabe, jedoch werden Sie feststellen, dass nur eine kleine Anzahl von ihnen für die tägliche Verwendung praktisch sind.
Weiterlesen: Alles, was Sie über Prozesse in Linux wissen müssen [umfassender Leitfaden]
In diesem Artikel werden wir uns 30 nützliche Beispiele für ps-Befehle ansehen, um aktive laufende Prozesse auf einem Linux-System zu überwachen.
Beachten Sie, dass
Alle Prozesse in der aktuellen Shell auflisten
1. Wenn Sie den
$ ps

Alle Prozesse in verschiedenen Formaten ausdrucken
2. Zeigen Sie jeden aktiven Prozess auf einem Linux-System im generischen (Unix/Linux)-Format an.
$ ps -A OR $ ps -e

3. Zeigen Sie alle Prozesse im
$ ps au OR $ ps axu

4.Um eine vollständige Formatliste durchzuführen, fügen Sie das -f
oder -F
Flag hinzu.
$ ps -ef OR $ ps -eF

Benutzer ausgeführten Prozesse anzeigen
5. Sie können alle Prozesse auswählen, die Ihnen gehören (Ausführer des ps-Befehls, in diesem Fall root), geben Sie ein:
$ ps -x
6. Um die Prozesse eines Benutzers nach echter Benutzer-ID (RUID) oder Namen anzuzeigen, verwenden Sie das -U
Flag.
$ ps -fU tecmint OR $ ps -fu 1000

7. Um die Prozesse eines Benutzers nach effektiver Benutzer-ID (EUID) oder Namen auszuwählen, verwenden Sie die -u
Option.
$ ps -fu tecmint OR $ ps -fu 1000
Alle Prozesse anzeigen, die als root ausgeführt werden (echte und effektive ID)
8. Der folgende Befehl ermöglicht es Ihnen, jeden Prozess, der mit Benutzerrechten von root ausgeführt wird, im Benutzerformat anzuzeigen.
$ ps -U root -u root

Gruppenprozesse anzeigen
9. Wenn Sie alle Prozesse auflisten möchten, die einer bestimmten Gruppe gehören (echte Gruppen-ID (RGID) oder Name), geben Sie ein.
$ ps -fG apache OR $ ps -fG 48

10. Um alle Prozesse aufzulisten, die von einem effektiven Gruppennamen (oder einer Sitzung) gehören, geben Sie ein.
$ ps -fg apache
Prozesse nach PID und PPID anzeigen
11. Sie können Prozesse nach PID auflisten wie folgt.
$ ps -fp 1178

12. Um Prozesse nach PPID auszuwählen, geben Sie ein.
$ ps -f --ppid 1154

13. Eine Auswahl mit einer PID-Liste treffen.
$ ps -fp 2226,1154,1146

Prozesse nach TTY anzeigen
14. Um Prozesse nach tty auszuwählen, verwenden Sie das -t Flag wie folgt.
$ ps -t pts/0 $ ps -t pts/1 $ ps -ft tty1

Drucken Sie den Prozessbaum
15. Ein Prozessbaum zeigt, wie Prozesse auf dem System miteinander verbunden sind; Prozesse, deren Elternprozesse beendet wurden, werden vom init (oder systemd) übernommen.
$ ps -e --forest

16. Sie können auch einen Prozessbaum für einen bestimmten Prozess wie folgt ausdrucken.
$ ps -f --forest -C sshd OR $ ps -ef --forest | grep -v grep | grep sshd

Drucken Sie Prozess-Threads
17. Um alle Threads eines Prozesses auszudrucken, verwenden Sie das -L
Flag, dies zeigt die LWP (leichtgewichtiger Prozess) sowie die NLWP (Anzahl der leichtgewichtigen Prozesse) Spalten an.
$ ps -fL -C httpd

Benutzerdefiniertes Ausgabeformat festlegen
Mit den Optionen -o oder –format ermöglicht ps Ihnen, benutzerdefinierte Ausgabeformate wie unten gezeigt zu erstellen.
18. Um alle Formatierer aufzulisten, fügen Sie das L
Flag hinzu.
$ ps L
19. Der folgende Befehl ermöglicht es Ihnen, die PID, PPID, den Benutzernamen und den Befehl eines Prozesses anzuzeigen.
$ ps -eo pid,ppid,user,cmd

20. Im Folgenden finden Sie ein weiteres Beispiel für ein benutzerdefiniertes Ausgabeformat, das Dateisystemgruppe, Prioritätswert, Startzeit und vergangene Zeit eines Prozesses anzeigt.
$ ps -p 1154 -o pid,ppid,fgroup,ni,lstart,etime

21. Um einen Prozessnamen anhand seiner PID zu finden.Prozessname mithilfe seiner PID finden.
$ ps -p 1154 -o comm=

Übergeordnete und untergeordnete Prozesse anzeigen
22. Um einen bestimmten Prozess nach seinem Namen auszuwählen, verwenden Sie das -C Flag, dies wird auch alle untergeordneten Prozesse anzeigen.
$ ps -C sshd

23. Finden Sie alle PIDs aller Instanzen eines Prozesses, nützlich beim Schreiben von Skripten, die PIDs aus einer Standardausgabe oder Datei lesen müssen.
$ ps -C httpd -o pid=

24. Überprüfen Sie die Ausführungszeit eines Prozesses.
$ ps -eo comm,etime,user | grep httpd
Die Ausgabe unten zeigt, dass der HTTPD-Dienst seit 1 Stunde, 48 Minuten und 17 Sekunden läuft.

Linux-Systemleistung beheben
Wenn Ihr System nicht wie erwartet funktioniert, zum Beispiel, wenn es ungewöhnlich langsam ist, können Sie wie folgt einige Systemfehlerbehebungen durchführen.
26. Finden Sie die am meisten ausgeführten Prozesse nach höchstem Speicher- und CPU-Verbrauch in Linux.
$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head OR $ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head

27. Um Linux-Prozesse/nicht reagierende Anwendungen oder jeden Prozess, der viel CPU-Zeit verbraucht, zu beenden.
Zuerst finden Sie die PID des nicht reagierenden Prozesses oder der Anwendung.
$ ps -A | grep -i stress
Verwenden Sie dann den kill-Befehl, um ihn sofort zu beenden.
$ kill -9 2583 2584

Sicherheitsinformationen drucken
28. Zeigen Sie den Sicherheitskontext (speziell für SELinux) wie folgt an.
$ ps -eM OR $ ps --context

29. Mit diesem Befehl können Sie Sicherheitsinformationen auch in einem benutzerdefinierten Format anzeigen.
$ ps -eo euser,ruser,suser,fuser,f,comm,label

Führen Sie die Echtzeit-Prozessüberwachung mit dem Watch-Dienstprogramm durch
30. Schließlich können Sie, da ps statische Informationen anzeigt, das Watch-Dienstprogramm verwenden, um eine Echtzeit-Prozessüberwachung mit wiederholter Ausgabe durchzuführen, die nach jeder Sekunde angezeigt wird, wie im folgenden Befehl (geben Sie einen benutzerdefinierten ps-Befehl an, um Ihr Ziel zu erreichen).
$ watch -n 1 'ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head'

Wichtig: ps zeigt nur statische Informationen an. Um häufig aktualisierte Ausgaben anzuzeigen, können Sie Tools wie htop, top und glances verwenden: Die letzten beiden sind tatsächlich Linux-Systemleistungsüberwachungstools.
Sie möchten möglicherweise auch die folgenden verwandten Artikel lesen.
- So finden Sie einen Prozessnamen anhand der PID-Nummer in Linux
- Finden Sie die Top-Ausführungsprozesse nach höchstem Speicher- und CPU-Verbrauch in Linux
- A Guide to Kill, Pkill, and Killall Commands to Terminate a Process in Linux
- Wie man laufende Prozesse in Linux findet und beendet
- Wie man ein Linux-Kommando im Hintergrund startet und den Prozess im Terminal abkoppelt
Das war’s für jetzt. Wenn Sie irgendwelche nützlichen ps-Befehl Beispiele zum Teilen haben (vergessen Sie nicht zu erklären, was es macht), verwenden Sie das Kommentarformular unten.
Source:
https://www.tecmint.com/ps-command-examples-for-linux-process-monitoring/