- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章 使用awk和sed 主要内容 awk的基础知识 awk的模式功能 模式匹配时的动作 awk的输入方式 awk的输出方式 用Shell来运行awk sed文件和sed命令 9.1 awk概述 awk程序最初是由Aho、Kernighan、Weiberger在1977年做为一个模式查寻语言共同创作出来的。 几个版本: awk nawk(new awk)。 gawk,是awk命令加强的公共流通版,它是GNU软件系统的一部份。 9.1 awk概述 调用awk 命令行方式,如: awk [-F fild-separator] commands input-file(s) 将所有awk命令插入一个文件,并使awk程序可执行,然后用awk命令解释器作为脚本的首行,以便通过键入脚本名称来调用它。 第三种方式是将所有的awk命令插入一个单独文件,然后调用。 9.1 awk概述 与大部分UNIX系统命令一样,awk可以使用标准的输入与输出设备。如果没有确定输入的文件,awk程序会自动读取并作用于标准输入设备。该功能允许把awk程序做为管道命令的一部分来使用。 9.2 模式 一般表达式 是用户想匹配的一串字母、数值或特殊的字符。 比较模式 是一种可以将模式中的两个元素进行比较。 复合模式 是一种采用各种逻辑运算符:与()或(||)、非(!)和各多个模式合起来使用的方式。用户可以使用这种方式查找文件中包含某两个字的行。 范围模式 这种模式用于匹配那些出现在两个不同的模式之间的所有行。它们是被用于查询一组句子或结构化组织的文件中的记录组,例如一个按字母排序的人名数据库。 开始与结束模式 这是一种特殊内建模式,它向用户的awk程序发送指令使之在循环之前做出某操作。 9.2 模式 字符串模式 awk程序包含很多描述不同字符串的机制;这实际上会使一些初学者非常迷惑。用户可以使用一个简单的字符串模式,它包括含有特殊字符的一般表达式,或是含有例如比较运算符之类的字符串运算符。 模式匹配的最简单的方式是查询某行中的某一特定的字或字符串。 9.2 模式 复合模式 复合模式是把多个模式用逻辑运算符(与),||(或)和!(非)结合起来而组成的模式。 范围模式 句法为:pattern1,pattern2 数值模式 开始(BEGIN)模式 结束(END)模式 9.3 动作 变量 awk程序允许用户自己设置变量,或给它们赋值,以及对它们进行操作。变量可以包括字符串与数值。 一个变量名可以由字母与数字序列组成,且开头必须使用字母。下划线也可以作为变量的一部分。 9.3 动作 9.3 动作 数值运算符及其操作 awk程序提供了大量的函数及运算符来处理数值及数值变量,把这些函数和运算符在一起可以组合出大量的操作。 算术运算符包括:+、-、*、/、%还有^。%运算符表示计算两个整数模后的余数;^运算符表示指数运算。 9.3 动作 数组 awk程序可以非常容易地建立和使用数组。用户可以自己只定义需要的单独数组元素,然后awk会自动为用户建立数组,这就避免了用户对数组进行声明及定义。awk的另一显著特征是其关联数组——使用字符串,而不是数字作为数组的下标。 9.3 动作 用户定义函数 象其它许多编程语言,如C和BASIC一样,awk提供了在程序内部自定义函数,然后在其中调用的机制。 用户定义的函数可以带参数(变量值),并可以有返回值。一旦某函数被定义,它就可以在一个模式或操作中使用,它同样可以用于任意内置函数起作用的地方。 9.3 动作 控制语句 awk提供了自循环与迭代及if-then选择的控制流语句。在这方面它和C语言有着相同样式的语句。 if语句 其结构如下:if (condition) action while语句 它的格式为: while (condition) { action } 9.3 动作 for语句 for语句只要条件满足就会反复执行操作。For语句包括一条初始化语句,它在循环的最初被执行;一条测试语句,在每次循环当中都被执行;还有一条语句是在每次检测成功后执行的。 它的格式:for (initial statement; test; increment) statement 9.2 模式 break和exit break是用来立即跳出循环的语句,比如它可以跳出while语句。你也许想记下销售数据库中一定的销售次数,当此次数达到时停止计数。 Exit命令告诉awk停止读取输入。当awk找到一个exit语句,它立即执行表示结束的END操作,或直接中断此程序(没有结束的操作)。用户可以使用此命令来中断一个有错误的输入文件,比如说文件少了一个字段。 9.4 输入 从文件读取输入 从键盘读取输入 从管道(
您可能关注的文档
- 新UG模具设计基础教程(NX 6版) 教学课件 978 7 302 22522 5 第三章.ppt
- 新UG模具设计基础教程(NX 6版) 教学课件 978 7 302 22522 5 第十章.ppt
- 新UG模具设计基础教程(NX 6版) 教学课件 978 7 302 22522 5 第四章.ppt
- 新UG模具设计基础教程(NX 6版) 教学课件 978 7 302 22522 5 第五章.ppt
- 新UG模具设计基础教程(NX 6版) 教学课件 978 7 302 22522 5 第一章.ppt
- 新UML面向对象分析与设计教程 教学课件 978 7 302 28541 0 第1章 基于面向对象的UML.ppt
- 新UML面向对象分析与设计教程 教学课件 978 7 302 28541 0 第2章 UML语言综述.ppt
- 新UML面向对象分析与设计教程 教学课件 978 7 302 28541 0 第3章 UML工具——Rational Rose.ppt
- 新UML面向对象分析与设计教程 教学课件 978 7 302 28541 0 第4章 类图和对象图.ppt
- 新UML面向对象分析与设计教程 教学课件 978 7 302 28541 0 第5章 包图.ppt
文档评论(0)