Est-il possible de filtrer le haut pour afficher des processus spécifiques?


Réponses:


16

Vous pourriez à quelque chose comme ça

top -p `pgrep -d ',' "java|tomcat|redis|mysql|mongo"`

Cela permet pgrepde produire une liste de pid séparés par des virgules qui sont passés àtop -p


Beaucoup plus simple :)
Mircea Vutcovici

J'avais du mal à trouver comment trouver la liste des processus pour plusieurs noms de processus jusqu'à ce que je voie comment vous l'avez fait.
user9517

1
Une note aux futurs téléspectateurs - cette méthode peut ne pas vous donner les données que vous attendez. a) cette méthode montre les processus en cours d' exécution que lorsque le dessus est commencé . Le comportement normal de Top est de montrer les processus nouveaux depuis le début. b) le manuel supérieur que j'ai lu dit que -p est limité à 20 identifiants de processus. voir: stackoverflow.com/questions/12075591/…
MaasSql

1
Après avoir exécuté top -c, appuyez sur o et écrivez un filtre sur une colonne, par exemple pour afficher les lignes où la colonne COMMAND contient la chaîne foo, écrivez COMMAND = foo
MaasSql

6

Pas tout à fait ce que vous recherchez, mais parfois un processus est exécuté par son propre utilisateur, comme apache2 est souvent exécuté par l'utilisateur www-data.

Vous pouvez l'utiliser pour limiter la sortie de top aux seuls processus de cet utilisateur, en affichant uniquement les processus apache2 en utilisant cette commande:

top -u www-data

Génial! Je me demandais comment lister les processus spécifiques aux utilisateurs
razor7

4

Consultez la page de manuel de man top pour plus de détails sur l'utilitaire top ...

Semms vous avez besoin du paramètre -p

-p: surveille les PID comme: -pN1 -pN2 ... ou -pN1, N2 [, ...]

        Monitor only processes with specified process  IDs.   This  option
        can  be given up to 20 times, or you can provide a comma delimited
        list  with  up  to  20  pids.   Co-mingling  both  approaches   is
        permitted.

4

Essaye ça:

alias mytop='echo $(sed "s/\([0-9]*\)/-p \1/g;s/^/top /" <(pgrep -d" " "java|redis|mysql|mongo"))'
mytop
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.