AWK检查UNIX文件系统空间
本文通过一行SHELL命令实现检查当前UNIX文件系统空间中是否存在超过指定百分比,从中可以看到awk命令的强大功能。
使用工具:df命令,awk命令
测试环境:AIX 5.x
系统管理员经常要求查看文件系统空间,防止文件系统剩余空间过小,影响系统运行。
我们最常使用的命令就是 df –P, 显示结果如下:
文件系统 512 块 已使用 可用 容量 安装于
/dev/hd4 2097152 39216 2057936 2% /
/dev/hd2 12320768 4870784 7449984 40% /usr
/dev/hd9var 1310720 152256 1158464 12% /var
/dev/hd3 2097152 94976 2002176 5% /tmp
/dev/fwdump 786432 776 785656 1% /var/001
/dev/hd1 4194304 519896 3674408 13% /home
/proc - - - - /proc
/dev/hd10opt 1310720 221232 1089488 17% /opt
/dev/lv00 262144 8320 253824 4% /var/002
/dev/fslv00 12320768 5440792 6879976 45% /003
/dev/fslv01 20971520 121104 20850416 1% /004
/dev/fslv02 4194304 1295464 2898840 31% /005
/dev/fslv03 41156608 22391056 18765552 55% /backup
命令如下:
df -P|awk -F% '{print $1,$2}'|awk 'NR>1 && $5>50 {print $5,$6}'
说明:
1. df –P 显示各文件系统占用情况。
2. awk –F% ‘{print $1,$2}’ 去除%号
3. NR>1 从第二行开始统计,因为第一行为标题
4. $5>50 第五列的数大于50,也就是超过 50%
5. print $1,$5,$6 显示符合3,4条件的行的第1,5,6列,即文件系统,容量和安装位置。
输出结果:
/dev/fslv03 55 /backup
结语:
是不是很简单,只要一行命令就可以完成,UNIX下的SHELL功能很强,特别是AWK在文本的处理上是一把利剑。大家有什么好的脚本,也请拿出来分享。
如果只想知道有几个文件系统超过了指定比例,只要在上面的命令后面加上
|wc –l
即可得到输出结果:
------------------------------------------------------------------------------
1
作者:徒步天下 ([url]http://hiker2008.blog.51cto.com[/url] )
©著作权归作者所有:来自51CTO博客作者徒步天下的原创作品,如需转载,请注明出处,否则将追究法律责任
实例职场unix技术学习
共同学习,写下你的评论
评论加载中...
作者其他优质文章