码迷,mamicode.com
首页 > 其他好文 > 详细

AWK

时间:2018-03-31 11:57:37      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:awk

本章你要掌握的内容如下:

1 awk的介绍

2 awk的基本用法

3 awk的变量

4 awk的格式化

5 awk的操作符

6 awk条件判断

7 awk的循坏

8 awk的数组

9 awk的函数

10 调用系统命令


1 awk的介绍:

大家最早听说awk的应该是在文本三剑客当中,那就是grep、sed、awk。但是awk可以说是里面最厉害的了,有人说你的linux学的有多麽的好,在awk当中都可以满足你,因为awk它是一门编程语言,它主要用于对文本和数据的扫描与处理,可以生成报告生成器,文本处理的格式化输出。awk有很多种版本,如:awk、nawk、mawk、gawk、MKS awk、take..  这其中有开源产品也有商业产品。

1.1awk的工作原理:

awk  'BEGIN{commands}   pattern {commands}   END{commands}'

第一步:执行BEGIN{commands}语句块中的语句;

第二步:从文件或标准输入(stain)读取一行,然后执行pattern{commands}语句块,它逐行扫描,从第一行到最后一行重复这个过程,知道文件被完全读取。

第三步:当读到输入流末尾时,执行END{commands}语句块。

解释说明:

BEGIN语句块在awk开始从输入流中读取之前被执行,这是一个可选的语句块,比如变量初始化、打印输出表格的表头等语句通常可以写在BEGIN语句块中。

pattern语句块中的通用命令时最重要的部分,它也是可选的,如果没有提供pattern语句块,则是默认执行{print}。既打印每一个读取到的行,awk读取的每一行都会被执行该语句块。

END语句块在awk从输入流中读取完所有的行之后就被执行,比如打印所有行的 分析结果这类信息汇总都是在END语句块中完成,他也是一个可选的语句块。

1.2awk的基本结构:awk 'BEGIN{print "start"} pattern{commands} END{print "end"}'file

一个awk通常有BEGIN语句块、能够使用模式匹配的通用语句块、END语句块三部分组成,这三个部分是可选的。任意一个部分都可以不出现在脚本中。

1.3 awk的模式和操作:awk脚本是由模式和操作组成的。那什么是模式那,下面这些都是:

1 /正则表达式/:使用通配符的扩展集。

2 关系表达式:使用运算符进行操作,可以是字符串或数字的比较测试。

3模式匹配表达式:用运算符~表示匹配和!~表示不匹配。

4 BEGIN语句块、pattern语句块、END语句块:

操作由一个或多个命令、函数、表达式组成,有如下这些:

1 变量和数组赋值

2 输出命令

3 内置函数

4控制流语句




AWK

标签:awk

原文地址:http://blog.51cto.com/13570192/2093298

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!