GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie sortiere ich die ps-Ausgabe nach der Startzeit des Prozesses?

Lösung 1:

Dies sollte unter Linux und SysV5 funktionieren

ps -ef --sort=start_time

Lösung 2:

Linux:

$ ps aux --sort=lstart 

OSX:

$ ps aux -O started

Lösung 3:

Neben den großartigen Antworten oben möchte ich manchmal nur die 20 häufigsten Übeltäter nach Prozess sehen, sortiert absteigend nach Zeit, CPU-% und Speicherauslastung.

Dafür verwende ich:

ps auxww --sort=lstart | sort -r -k3,4 | head -20

Dies wäre auf einer CentOS-Plattform, obwohl ich die gleichen Ergebnisse auch auf Fedora erzielt habe.

Oh, und zum Grinsen, ich möchte manchmal eine Reihe von Prozessen entfernen, also verwende ich einfach eine Variante des oben Gesagten, die ein bisschen grep -v-Aktion enthält, wie zum Beispiel:

ps auxww --sort=lstart | sort -r -k3,4 | grep -v "sbin/httpd" | head -20

Lösung 4:

Ich kann noch nichts dazu sagen, aber um die Frage zu beantworten, wie man die Reihenfolge einer Zeitsortierung umkehrt, setzen Sie einfach ein Minuszeichen (- ) vor dem Spielfeld.
Beispiel:ps -elf --sort=-start_time

Lösung 5:

Oder versuchen Sie es mit 'ls', da es Zeitformate ermöglicht, die einfach zu sortieren und einfacher zu verwenden sind.

( cd /proc; ls -td --full-time --time-style=+%s [0123456789]*; )

Gibt das Datum/die Uhrzeit in der Epoche aus, die neuesten Prozesse ganz oben.


Linux
  1. So starten Sie den Linux-Befehl im Hintergrund und trennen den Prozess im Terminal

  2. Wie starte ich Multithread-Grep im Terminal?

  3. Wie kann man eine Datei ausgeben und Zeilen ignorieren, die mit „?“ beginnen?

  4. Prozessstartzeit mit Zeitzone?

  5. So leiten Sie die Ausgabe eines bereits laufenden Prozesses um

Daemontools Multilog verliert Informationen zur Protokollzeilenzeit. Wie man es repariert?

Ausgabe nach Spalte sortieren?

Wie starte ich einen Prozess in einer eigenen Prozessgruppe?

Wie extrahiere ich die Dauer aus der ffmpeg-Ausgabe?

Wie kann ich die Ausgabe von du -h nach Größe sortieren?

Linux - Wie sehe ich, wann ein Prozess gestartet wurde?