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

Linux – Wie kann ich die Befehlszeile der in den letzten 10 Sekunden ausgeführten Prozesse anzeigen?

Gibt es eine Ansicht zum Protokollieren und Auflisten der in den letzten 10 Sekunden ausgeführten Prozesse?

Ich möchte besonders die Befehlszeile verfolgen.

Akzeptierte Antwort:

Wenn der Prozess noch nicht abgeschlossen ist, können Sie sie folgendermaßen finden:

ps axho etime,cmd| sed ':a;s/^(0*) /10/g;ta' | sort | less

Aber wenn der Prozess bereits abgeschlossen ist, ist es weniger sicher:

Sie müssen wissen, wo Sie suchen müssen...

Warnung! Die folgenden funktionieren nur, wenn sich die Binärdatei nicht im Cache-Speicher befindet:wenn eine Weile nicht auf sie zugegriffen wurde.

Vielleicht ein einfaches ls -ltru könnte reichen:

/bin/ls -ltru /etc/init.d | tail

Andernfalls könnte ein ausgefeilterer Befehl wie folgt lauten:

find /usr/bin -type f -amin -1

find ${PATH//:/ } -type f -amin -1

find ${PATH//:/ } /home/*/bin -type f -amin -1

zeigt alle Dateien an, auf die weniger als eine Minute zugegriffen wurde.

Für 10 Sekunden ist es schwieriger:

while read time;do
    read name
    [ $time -lt 10 ] && echo $name
  done < <(find ${PATH//:/ } /home/*/bin -type f -amin -1 -print0 |
    xargs -0 --no-run-if-empty stat -c $(date +%s)$'-%X ;"%nn"' |
    bc)

Linux
  1. So finden Sie eine Datei in Linux

  2. So zeigen Sie Bildmetadaten unter Linux an

  3. Linux – So finden Sie Prozesse über die serielle Schnittstelle?

  4. So beenden Sie laufende Prozesse in Linux

  5. Wie finde ich Verzeichnisse, die am letzten Tag in Linux aktualisiert wurden?

So finden Sie die IP-Adresse unter Linux

So finden Sie die zuletzt angemeldeten Benutzer in Linux

So finden Sie den Hostnamen unter Linux

So finden Sie Dateien, die in den letzten 24 Stunden in Linux geändert wurden

So zeigen Sie Hardwareinformationen unter Linux an

So finden Sie die letzte Anmeldung unter Linux