Odpowiedzi:
Możesz zrobić coś takiego
top -p `pgrep -d ',' "java|tomcat|redis|mysql|mongo"`
Spowoduje pgrep
to utworzenie rozdzielonej przecinkami listy pidów, które są przekazywanetop -p
Nie do końca to, czego szukasz, ale czasami proces jest uruchamiany przez jego własnego użytkownika, tak jak apache2 jest często uruchamiany przez www-dane użytkownika.
Możesz użyć tego, aby ograniczyć wyjście top tylko do procesów tego użytkownika, skutecznie pokazując tylko procesy apache2 za pomocą tego polecenia:
top -u www-data
Sprawdź stronę podręcznika man top, aby uzyskać więcej informacji na temat najwyższej użyteczności ...
Semms potrzebujesz parametru -p
-p: Monitoruj PID jako: -pN1 -pN2 ... lub -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.
Spróbuj tego:
alias mytop='echo $(sed "s/\([0-9]*\)/-p \1/g;s/^/top /" <(pgrep -d" " "java|redis|mysql|mongo"))'
mytop