查看进程占用的内存大小

本文介绍了一个使用Shell脚本进行内存使用情况分析的方法。该脚本通过调用free命令获取总的内存信息,并利用ps命令查找占用内存较高的进程。通过一系列的awk处理,将进程按其使用的内存大小进行排序并汇总,最终输出各进程所占内存总量及剩余内存等信息。
01.#!/bin/sh  
02.mem=`free -m | awk 'NR==2{print $2}'`  
03.ps -aux 2>&1 | sort -k 4 -r | awk '$4 ~ /^[0-9]/ && $4>0 {print $4,$11}' | awk '{print $1/100*mem"   "$2}' mem=$mem | sort -k 2 | awk '  
04.{  
05.   a[$2] += $1;  
06.   b[$2]++;  
07.   total += $1;  
08.   total++;  
09.}  
10.END{  
11.  for(i in a){  
12.    t=i;  
13.    gsub(/:|.*\//, "", t);  
14.    printf "%10s   %s\n" ,a[i]"MB", t"["b[i]"]";  
15.  }  
16.print "Memory Total: "mem"MB, used: "total"MB, free: "mem-total"MB."  
17.}' mem=$mem | sort -n -r  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值