如何用 ps 找出总内存资源使用情况?

如何用 ps 找出总内存资源使用情况?

通过ps命令我可以找出每个程序使用了多少内存:

ps -u mertnuhoglu -o pcpu,rss,pid,command

是否也可以轻松地找出每种类型的资源使用情况的总和?

答案1

您可以使用以下方法对使用情况列进行求和awk

ps --no-headers -u $USER -o pcpu,rss | awk '{cpu += $1; rss += $2} END {print cpu, rss}'

free您可能还对内存使用命令感兴趣:

$ free
             total       used       free     shared    buffers     cached
Mem:       2055480    1806596     248884          0      14016     346276
-/+ buffers/cache:    1446304     609176
Swap:      2097148     132980    1964168

输出以千字节为单位(用于free --mega兆字节或free -m兆字节)。特别是,used,+/- buffers/cache条目类似于(每个人)使用的总物理内存。

答案2

你可以试试:

$ ps -eo vsz,comm= | awk 'NR>1{u[$2]+=$1}END{for(i in u) print u[i]"="i}' 

相关内容