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

Auflisten aller laufenden Prozesse auf dem Server mit PHP

Ich sehe nichts Einfacheres als ps mit den richtigen Argumenten, zB:ahxwwo pid,command die nur die gewünschte Information liefert, zB:

5911 tail -F /var/log/mail.log

Wenn Sie Rohdaten wünschen, können Sie jede Datei in /proc/[123456789]*/cmdline lesen . Zum Beispiel

$ cat -vet /proc/5911/cmdline
tail^@-F^@/var/log/mail.log^@

wobei die Befehlsargumente durch ein Nullzeichen getrennt werden.


Das meiste Lob geht an meuh.

ps ahxwwo pid,command

Gibt mir die drei Elemente, die ich brauche, aber es ist aufgrund willkürlicher Leerzeichenformatierung immer noch ziemlich schwierig zu parsen.

Es ist jedoch möglich, die Leerzeichenformatierung zu entfernen.

ps ahxwwo pid:1,command:1

Mit explode mit einem Leerzeichen als Trennzeichen garantiert nun, dass Index 0 die PID und Index 1 der Befehl ist und die restlichen Indizes Argumente sind.


Linux
  1. Zuverlässiger Weg, untergeordnete Prozesse mit `nsenter:` zu jailen?

  2. Befehlsersetzung mit „?

  3. Verwenden von Serverprotokollen

  4. PS:Befehl nicht gefunden

  5. Automatisieren des ausgeführten Befehls unter Linux von Windows mit PuTTY

Linux-Bildschirmbefehl:Prozesse trotz unterbrochener Verbindung weiterlaufen lassen

So verwenden Sie den PS-Befehl

Führen Sie Hintergrundprozesse in Linux mit dem Screen-Befehl aus

Verwenden des Watch-Befehls unter Linux

Verwendung der Verlaufsfunktion in Bash Shell auf Ubuntu 16.04 LTS-Server

Wie bekomme ich alle Prozesse auf jedem CPU-Kern in Ubuntu zum Laufen?