我需要一种方法来查看前十个进程使用了多少字节,而不是百分比。我正在使用 centos
答案1
最好使用带 head 的 ps
ps aux --sort -rss | head -10
该RSS
字段显示物理内存使用情况(以 KB 为单位)。
答案2
我刚刚注意到它rss
是以千字节为单位。
我创建了一个awk
脚本来以人类可读的格式打印尺寸:
#!/usr/bin/awk
{
hr[1024**2]="GB"; hr[1024]="MB";
for (x=1024**3; x>=1024; x/=1024) {
if ($1>=x) {
printf ("%-6.1f %s ", $1/x, hr[x]); break
}
}
}
{ printf ("%-6s %-10s ", $2, $3) }
{ for ( x=4 ; x<=NF ; x++ ) { printf ("%s ",$x) } print ("") }
并将输出传输ps
至:
$ ps --no-headers -eo rss,pid,user,command --sort -rss | head -10 | awk -f topmem.awk
答案3
top
并M
根据常驻内存使用情况进行排序。这是我所知道的最快和最简单的方法。