Je souhaite afficher des informations sur les processus exécutés sous OS X. Exécuter ps
dans le terminal répertorie uniquement les fenêtres de terminal ouvertes. Comment voir tous les processus en cours d'exécution?
Disons que je suis un navigateur Web, un terminal et un éditeur de texte. J'aimerais voir des informations sur l'éditeur de texte et le navigateur Web.
Vous pouvez simplement utiliser top
Il affichera tout ce qui tourne sur votre OSX
Fonctionnement ps -e
fait le tour. Trouvé la réponse ici .
Utiliser top
et ps
est correct, mais j’aperçois que l’utilisation de htop
est bien meilleure et plus claire que les outils standard utilisés par Mac OS X. Mon utilisation préférée est d'appuyer sur la touche T
pendant son exécution pour afficher les processus en arborescence (voir la capture d'écran). Vous montre quels processus sont dépendants d’autres processus.
Vous pouvez l'installer à partir de Homebrew en utilisant:
brew install htop
Et si Xcode et des outils connexes tels que git
sont installés sur votre système et que vous souhaitez installer le dernier code de développement à partir de le référentiel source officiel , procédez comme suit.
Commencez par cloner le code source à partir du référentiel GitHub htop
:
git clone [email protected]:hishamhm/htop.git
Maintenant, allez dans le répertoire du référentiel:
cd htop
Courir autogen.sh
:
./autogen.sh
Exécutez cette commande configure
:
./configure
Une fois le processus configure
terminé, exécutez make
:
make
Enfin, installez-le en exécutant Sudo make install
:
Sudo make install
Essayez ps -ef
. man ps
vous donnera toutes les options.
-A Display information about other users' processes, including those without controlling terminals.
-e Identical to -A.
-f Display the uid, pid, parent pid, recent CPU usage, process start time, controlling tty, elapsed CPU usage, and the associated command. If the -u option is also used, display
the user name rather then the numeric uid. When -o or -O is used to add to the display following -f, the command field is not truncated as severely as it is in other formats.
Essayez la commande top
. C'est une commande interactive qui affichera les processus en cours.
Vous pouvez également utiliser l'application "Activity Monitor" de Apple (située dans /Applications/Utilities/
).
Il fournit une interface graphique plutôt agréable. Vous pouvez voir tous les processus en cours, les filtrer par utilisateur, obtenir des informations détaillées à leur sujet (CPU, mémoire, réseau, etc.), les surveiller, etc ...
Probablement votre meilleur choix, à moins que vous ne souhaitiez vous en tenir au terminal (dans ce cas, lisez le manuel top
ou ps
, car ces commandes comportent de nombreuses options).
Pour trier par utilisation du processeur: top -o cpu
si vous utilisez ps, vous pouvez consulter le manuel
man ps
il existe une liste de mots-clés vous permettant de créer ce dont vous avez besoin. Par exemple, pour montrer, id_utilisateur/processid/pourcentage de l'unité centrale/pourcentage de la mémoire/file d'attente de travail/commande:
ps -e -o "uid pid pcpu pmem wq comm"
-e est similaire à -A (tout compris; vos processus et autres) et -o consiste à forcer un format.
si vous recherchez un uid spécifique, vous pouvez le chaîner en utilisant awk ou grep, comme:
ps -e -o "uid pid pcpu pmem wq comm" | grep 501
cela devrait (presque) montrer que pour l'ID utilisateur 501. essayez-le.