GNU/Linux >> Tutoriels Linux >  >> Linux

Liste de tous les processus en cours d'exécution sur le serveur à l'aide de PHP

Je ne vois rien de plus simple que ps avec les bons arguments, par exemple :ahxwwo pid,command qui donne juste les informations que vous voulez, par exemple :

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

Si vous voulez des données brutes, vous pouvez lire chaque fichier en /proc/[123456789]*/cmdline . Par exemple,

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

où les arguments de la commande sont séparés par un caractère nul.


La plupart du crédit revient à moi.

ps ahxwwo pid,command

Me donne les trois éléments dont j'ai besoin, mais il est encore assez difficile à analyser en raison d'un formatage d'espace arbitraire.

Cependant, il est possible de supprimer la mise en forme des espaces.

ps ahxwwo pid:1,command:1

Utilisation de explode avec un espace blanc comme délimiteur garantit maintenant que l'index 0 est le pid, et l'index 1 est la commande, et les index restants sont des arguments.


Linux
  1. Mise à niveau de PHP 5.x vers PHP 7.0 sur le serveur CentOS/RedHat à l'aide de Yum

  2. Un moyen fiable d'emprisonner les processus enfants à l'aide de `nsenter:` ?

  3. Substitution de commande à l'aide de " ?

  4. Comment tuer tous les processus d'un utilisateur à l'aide de son UID

  5. Détermination du processeur particulier sur lequel un processus s'exécute

Commande d'écran Linux :Maintenir les processus en cours d'exécution malgré une connexion interrompue

Comment utiliser la commande PS

Exécutez des processus d'arrière-plan sous Linux à l'aide de la commande Screen

Utilisation de la commande Watch sous Linux

Utilisation de la fonctionnalité d'historique sur Bash Shell sur le serveur Ubuntu 16.04 LTS

Comment faire fonctionner tous les processus sur chaque cœur de processeur dans Ubuntu ?