编译环境

本系列文章所提供的算法均在以下环境下编译通过。

【脚本编译环境】Federa 8,linux 2.6.35.6-45.fc14.i686
【处理器】 Intel(R) Core(TM)2 Quad CPU Q9400 @ 2.66GHz
【内存】 2025272 kB

前言

awk是脚本中出色的文本处理工具。源码好像也是用C语言写的。本系列会针对不同的案例,用awk来解决我们所要的问题。 为什么会用awk呢?我们当然可以使用C语言或者java语言来对文本做处理,但每次都要编译会令人发疯的。修改起来也麻烦,正所谓杀鸡焉用牛刀。而脚本的灵活便捷使得工作变得更加轻松容易。在shell脚本编程中,awk堪称瑞士军刀绝不为过。

本系列文章均系笔者所写,难免有一些错误或者纰漏,如果小伙伴们有好的建议或者更好的算法,请不吝赐教。

正文

【场景】

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 是以什么分割。[ %]+说一个以上空格或者百分号分隔。
那么第六个就是要比较的数字了。

作者

出处:http://www.cnblogs.com/gina

本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

awk处理之案例一:awk 处理百分比的问题的更多相关文章

  1. gawk(awk)的用法案例

    gawk(awk)的用法案例 本文首先简单介绍一个gawk和awk的区别,然后是一点基本使用流程,最后是自己做的一个分析数据文件的脚本代码,供大家参考.另外想了解基本流程的入门知识的可以下载附件pdf ...

  2. 正则表达式以及sed,awk用法 附带案例

    则表达式 基本正则 ^    $    [  ]   [^]   .   *    \{n,m\}   \{n,\}    \(ro\)\{2\}   \(\)   扩展正则 egrep grep - ...

  3. Shell基础(六):使用awk提取文本、awk处理条件、awk综合脚本应用、awk流程控制、awk扩展应用

    一.使用awk提取文本 目标: 本案例要求使用awk工具完成下列过滤任务: 1> 练习awk工具的基本用法    2> 提取本机的IP地址.根分区使用率    3> 格式化输出/et ...

  4. 【转】Awk 命令学习总结、AWk命令系列学习(linux shell)

    前面的话 学习linux 的同人,都知道linux shell文本处理能力非常强大.有一组强大的文本处理工具:grep,sed,awk . 其中grep 经常用作查找匹配文本.sed用作文本编辑替换. ...

  5. Awk 命令学习总结、AWk命令系列学习(linux shell)

    AWK基本语法 下面没有提到awk命令怎么使用了,你可以通过 运行:awk –h 查询到所有命令及参数!下面把awk作为一门语言分节介绍. linux awk 内置变量使用介绍   awk语言中,怎么 ...

  6. awk处理之案例四:sort加awk来过滤文本

    编译环境 本系列文章所提供的算法均在以下环境下编译通过. [脚本编译环境]Federa 8,linux 2.6.35.6-45.fc14.i686 [处理器] Intel(R) Core(TM)2 Q ...

  7. awk处理之案例三:awk去掉不需要的文本行

    编译环境 本系列文章所提供的算法均在以下环境下编译通过. [脚本编译环境]Federa 8,linux 2.6.35.6-45.fc14.i686 [处理器] Intel(R) Core(TM)2 Q ...

  8. awk处理之案例二:awk匹配文本

    编译环境 本系列文章所提供的算法均在以下环境下编译通过. [脚本编译环境]Federa 8,linux 2.6.35.6-45.fc14.i686 [处理器] Intel(R) Core(TM)2 Q ...

  9. awk处理之案例六:awk根据条件插入文本

    编译环境 本系列文章所提供的算法均在以下环境下编译通过. [脚本编译环境]Federa 8,linux 2.6.35.6-45.fc14.i686 [处理器] Intel(R) Core(TM)2 Q ...

随机推荐

  1. .NET开源工作流RoadFlow-流程设计-流程步骤设置-数据设置

    数据设置是控制在流程处理过程中,当前步骤的数据显示与编辑状态,控制当前步骤哪些字段为只读,隐藏或可编辑.需要配合表单设计器使用.

  2. Linux中JDK环境变量的配置

    在JDK安装好以后,需要进行环境变量的配置 配置目录   /etc/profile 在这个文件的末尾追加 JAVA_HOME=/home/j2sdk1.4.2_11PATH=$PATH:/home/j ...

  3. python2 编码问题详解

    实例对比 定义 type str unicode print encode('utf8') decode('utf8') encode('unicode-escape') encode('string ...

  4. C# 堆和栈的区别-该文转自:http://www.itcodes.cn/746.html | 程序人生

    理解堆与栈对于理解.NET中的内存管理.垃圾回收.错误和异常.调试与日志有很大的帮助.垃圾回收的机制使程序员从复杂的内存管理中解脱出来,虽然绝大多数的C#程序并不需要程序员手动管理内存,但这并不代表程 ...

  5. hdu 1412 {A} + {B}

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=3282 {A} + {B} Description 给你两个集合,要求{A} + {B}.注:同一个集合 ...

  6. .net 的生成操作

    生成操作(BuildAction) 属性:BuildAction 属性指示 Visual Studio .NET 在执行生成时对文件执行的操作. BuildAction 可以具有以下几个值之一: 无( ...

  7. wpa_supplicant测试

    Android系统中对于WIFI的设置集成到了“设置”中,其实跟手动设置差不多.这里介绍下如何手动连接WIFI,以方便以后调试WIFI. 第一步要做的就是要加载WIFI模块驱动了.当然如果你的WIFI ...

  8. rm -rf删除过多文件提示参数过长

    cd /var/tmp/ find . -name "*.log"|xargs rm -rf "*.log"

  9. Qt 延时

    第一部分: 关于sleep函数,我们先来看一下他的作用:sleep函数是使调用sleep函数的线程休眠,线程主动放弃时间片.当经过指定的时间间隔后,再启动线程,继续执行代码.sleep函数并不能起到定 ...

  10. mysql 创建一个用户,指定一个数据库

    mysql 创建一个用户 hail,密码 hail,指定一个数据库 haildb 给 hail mysql -u root -p password use mysql; insert into use ...