GNU/Linux >> Znalost Linux >  >> Linux

Výpis všech běžících procesů na serveru pomocí PHP

Nevidím nic jednoduššího než ps se správnými argumenty, např.:ahxwwo pid,command který poskytuje pouze informace, které chcete, např.:

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

Pokud chcete nezpracovaná data, můžete si každý soubor přečíst v /proc/[123456789]*/cmdline . Například,

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

kde jsou argumenty příkazu odděleny znakem null.


Většina zásluh jde na meuh.

ps ahxwwo pid,command

Poskytuje mi tři položky, které potřebuji, ale stále je poměrně obtížné analyzovat kvůli libovolnému formátování prostoru.

Je však možné odstranit formátování mezery.

ps ahxwwo pid:1,command:1

Pomocí explode s bílým místem jako oddělovač nyní zaručuje, že index 0 je pid a index 1 je příkaz a zbývající indexy jsou argumenty.


Linux
  1. Linuxový příkaz ps

  2. Spuštění PHP skriptu z příkazového řádku jako proces na pozadí

  3. Jak zabít všechny procesy PHP-FPM v jediném příkazovém řádku

  1. Upgrade PHP 5.x na PHP 7.0 na serveru CentOS/RedHat pomocí Yum

  2. Jak mohu zabít všechny procesy uživatele pomocí jejich UID

  3. Určení konkrétního procesoru, na kterém běží proces

  1. Spolehlivý způsob, jak uvěznit dětské procesy pomocí `nsenter:`?

  2. Náhrada příkazů pomocí „?

  3. Použití protokolů serveru