Que tal algo como
pids=( $(pgrep 'postgres|unicorn|nginx') )
para colocar os PIDs em uma matriz e, em seguida,
top "${pids[@]/#/-p }"
para devolvê-los em top
, antes de cada um com -p
Eu quero monitorar o uso de memória para vários processos e criei um comando como este:
ps aux |grep -e postgres -e unicorn -e nginx|cut -d' ' -f2|for i in $(xargs); do echo $i; done
16112
16113
...
Como posso alterar o bit após o último canal para alimentar os argumentos em top -p $i
, para obter uma ideia geral do consumo de memória para todos os pids? O comando final produziria algo como top -p<pid1> -p<pid2>
e assim por diante
Tags bash process ps monitoring top