lfe*_*445 4 bash process monitoring top ps
我想监视几个进程的内存使用情况,并想出了一个这样的命令:
ps aux |grep -e postgres -e unicorn -e nginx|cut -d' ' -f2|for i in $(xargs); do echo $i; done
16112
16113
...
Run Code Online (Sandbox Code Playgroud)
如何更改最后一个管道后的位以将参数输入到 中top -p $i,以便我对所有 pid 的内存消耗有一个总体了解?最后一个命令会产生类似top -p<pid1> -p<pid2>等
怎么样的东西
pids=( $(pgrep 'postgres|unicorn|nginx') )
Run Code Online (Sandbox Code Playgroud)
将 PID 放入一个数组中,然后
top "${pids[@]/#/-p }"
Run Code Online (Sandbox Code Playgroud)
把它们吐回去,在top每个前面加上-p