【摘要】awk是一款优秀的处理列文本的小工具。本场景利用awk来过滤文本。把大于70%的文本行过滤出来。利用仅仅一行awk代码就完成任务。
前言:
****************************************************
awk是脚本中出色的文本处理工具。源码好像也是用C语言写的。本系列
会针对不同的案例,用awk来解决我们所要的问题。
为什么会用awk呢?是的,我们当然可以使用C语言或者java语言来对文本
做处理,但是小伙伴们不会觉得麻烦么?每次都要编译。修改起来也麻烦,正所谓
杀鸡焉用牛刀。但脚本的灵活便捷使得工作变得更加轻松容易。
***************************************** ***********
db_check.txt文本内容如下:
10.128.96.187: D: 1.1T 86G 999G 8% /cygdrive/d
10.128.96.168: D: 1.1T 782G 303G 73% /cygdrive/d
10.128.96.230: D: 809G 169G 641G 21% /cygdrive/d
10.128.96.178: D: 1.1T 66G 1020G 7% /cygdrive/d
10.128.96.195: D: 1.1T 743G 342G 69% /cygdrive/d
10.128.96.196: D: 1.1T 244G 841G 23% /cygdrive/d
10.128.96.181: D: 1.1T 816G 270G 76% /cygdrive/d
10.128.96.184: D: 1.9T 5.1G 1.9T 1% /cygdrive/d
10.128.96.185: D: 1.9T 4.1G 1.9T 1% /cygdrive/d
10.128.96.191: D: 1.1T 31G 1.1T 3% /cygdrive/d
10.128.96.194: D: 1.1T 469G 616G 44% /cygdrive/d
10.128.96.214: D: 1.1T 115G 970G 11% /cygdrive/d
10.128.98.165: D: 251G 153G 98G 62% /cygdrive/d
10.128.96.174: D: 1.1T 110G 975G 11% /cygdrive/d
10.128.96.193: D: 1.1T 93G 993G 9% /cygdrive/d
10.128.96.221: D: 816G 35G 781G 5% /cygdrive/d
10.128.96.186: D: 1.1T 140G 946G 13% /cygdrive/d
10.128.96.169: D: 1.1T 129G 957G 12% /cygdrive/d
10.128.96.229: D: 809G 264G 546G 33% /cygdrive/d
10.128.96.183: D: 1.1T 463G 623G 43% /cygdrive/d
10.128.96.171: D: 1.1T 757G 328G 70% /cygdrive/d
10.128.96.190: D: 1.1T 912G 174G 85% /cygdrive/d
10.128.96.209: d: 523G 177G 347G 34% /cygdrive/d
10.128.96.208: d: 523G 55G 468G 11% /cygdrive/d
脚本的目的,输出百分数那部分大于等于70%的行到另外一个文件 morethan70.txt把百分数的百分号去掉,变成一个数字,然后进行比较。
代码如下:
解释说明一下:
-F 是以什么分割。[ %]+说一个以上空格或者百分号分隔。
那么第六个就是要比较的数字了。
作者:Alex
出处:http://blog.youkuaiyun.com/hellotime本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。