AIX5.3下查看系统、用户、文件系统占用内存数量

AIX5.3下查看系统、用户、文件系统占用内存数量

#!/usr/bin/ksh

#查看总的内存数量:

totalmem=$(vmstat -v|head -n 1|awk '{print $1/256}')

echo "总内存(物理内存):"

echo $totalmem MB

echo

#查看各用户使用的内存:

usermem=$(for username in `cat /etc/passwd|awk -F: '{print $1}'`

do

svmon -U $username|grep $username" "

done)

usermem=`echo "$usermem"|grep -v "0        0        0        0"|awk '{print $1,$2/256,"MB"}'`

echo "各用户内存(物理内存):"

echo "$usermem"

usermem=$(echo "$usermem"|awk 'BEGIN{sum1=0;}{sum1=sum1+$2;}END{print sum1;}')

usermem=$(echo $usermem|awk -F. '{print $1}')

echo "用户内存(物理内存)合计:" $usermem MB

echo

#查看文件系统缓存:

clientmem1=`svmon -G|grep "^pin"|awk '{print $4}'`

clientmem2=`svmon -G|grep "^in use"|awk '{print $5}'`

clientmem=`expr $clientmem1 + $clientmem2`

clientmem=`expr $clientmem / 256`

echo "文件系统缓存(物理内存):"

echo $clientmem MB

echo

#查看系统使用内存:

sysmem=$(svmon -S -s -u|cut -b 54-|grep -v "0     0    0     0"|grep [0-9]|awk '{print $1,$2}')

supremeseg=`echo "$sysmem"|grep S|awk 'BEGIN{sum1=0;}{sum1=sum1+$2;}END{sum1=sum1*16*1024*1024;print sum1;}'`

largeseg=`echo "$sysmem"|grep L|awk 'BEGIN{sum1=0;}{sum1=sum1+$2;}END{sum1=sum1*16*1024;print sum1;}'`

mediumseg=`echo "$sysmem"|grep m|awk 'BEGIN{sum1=0;}{sum1=sum1+$2;}END{sum1=sum1*64;print sum1;}'`

smallseg=`echo "$sysmem"|grep s|awk 'BEGIN{sum1=0;}{sum1=sum1+$2;}END{sum1=sum1*4;print sum1;}'`

sysmem=$(expr $supremeseg + $largeseg + $mediumseg + $smallseg)

sysmem=$(expr $sysmem / 1024)

echo "系统内存(物理内存):"

echo $sysmem MB

echo

#查看空闲内存:

freemem=$(vmstat -v|grep free|awk '{print $1/256}')

echo "空闲内存(物理内存):"

freemem=$(echo $freemem|awk -F. '{print $1}')

echo $freemem MB

echo

参与19

17同行回答

午夜幽魂午夜幽魂系统运维工程师计算机有限公司
很不错的东西,有空试试显示全部
很不错的东西,有空试试收起
系统集成 · 2013-01-11
浏览1450
tiantomtiantom技术经理****有限公司
学习了。谢谢哈显示全部
学习了。谢谢哈收起
互联网服务 · 2015-09-24
浏览2094
Luga LeeLuga Lee系统架构师None
通过工具或命令方式也可以实现上述要求的显示全部
通过工具或命令方式也可以实现上述要求的收起
互联网服务 · 2013-02-20
浏览2003
Luga LeeLuga Lee系统架构师None
蛮不错的,支持这样的总结心得显示全部
蛮不错的,支持这样的总结心得收起
互联网服务 · 2013-02-20
浏览2000
yuyuluyuyulu系统工程师自由职业
不错,好东西,下面是我运行的结果# ./showmem.sh总内存(物理内存):7776 MB各用户内存(物理内存):root 280.07 MBdaemon 79.1055 MBpconsole 136.73 MBoracle 1586.67 MB用户内存(物理内存)合计: 2082 MB文件系统缓存(物理内存):1216 MB系统内存(物理内存):599 MB空闲内存(物理内存):4792 MB...显示全部
不错,好东西,下面是我运行的结果
# ./showmem.sh
总内存(物理内存):
7776 MB

各用户内存(物理内存):
root 280.07 MB
daemon 79.1055 MB
pconsole 136.73 MB
oracle 1586.67 MB
用户内存(物理内存)合计: 2082 MB

文件系统缓存(物理内存):
1216 MB

系统内存(物理内存):
599 MB

空闲内存(物理内存):
4792 MB收起
系统集成 · 2013-02-20
浏览2043
wubin53wubin53系统管理员中国联通
不错,收藏了。显示全部
不错,收藏了。收起
电信设备制造商 · 2013-02-19
浏览1998
mhb1976mhb1976数据库运维工程师中软国际
很实用!学习。显示全部
很实用!学习。收起
金融其它 · 2013-02-18
浏览1985
zihan524zihan524软件开发工程师北京中软国际信息技术有限公司
[此回答已删除]
浏览1820
kanter2008kanter2008系统工程师上海***
很实用的东西,已经收集。感谢显示全部
很实用的东西,已经收集。感谢收起
互联网服务 · 2013-02-16
浏览2274
mhb1976mhb1976数据库运维工程师中软国际
总结的很好!!!!!!!!!!!显示全部
总结的很好!!!!!!!!!!!收起
金融其它 · 2013-02-09
浏览2204

提问者

a3470194
系统管理员北京瑞银信管理顾问有限公司
擅长领域: 服务器数据库系统运维

相关问题

相关文章

问题状态

  • 发布时间:2013-01-11
  • 关注会员:1 人
  • 问题浏览:15315
  • 最近回答:2015-09-24
  • X社区推广