linuxawk完全手册
15页1、1.什么是 awk?你可能对UNIX比较熟悉,但你可能对awk很陌生,这一点也不奇怪,的 确,与其优秀的功能相比,awk还远没达到它应有的知名度。awk是什么?与其 它大多数UNIX命令不同的是,从名字上看,我们不可能知道awk的功能:它既不是具有独立意义的英文单词,也不是几个相关单词的缩写。事实上, awk 是三个人名的缩写,他们是:Aho、(Peter) Weinberg 和(Brain)Kernighan。正是这三个人创造了 awk-一个 优秀的样式扫描与处理工具。AWK的功能是什么?与sed和grep很相似,awk是一种样式扫描与处理工 具。但其功能却大大强于sed和grep。awk提供了极其强大的功能:它几乎可以完成grep和sed所能完成的全部工作,同时,它还可以进行样式装入、流控制、数学运算符、进程控制语句甚至于内置的变量和函数。它具备了一个完整的语言所应具有的几乎所有精美特性。实际上, awk 的确拥有自 己的语言:awk 程序设计语言, awk 的三位创建者已将它正式定义为:样式扫描和处理语言。2 .为什么使用awk?即使如此,你也许仍然会问,我为什么要使用 awk?
2、使用 awk 的第一个理由是基于文本的样式扫描和处理是我们经常做的工作, awk 所做的工作有些象数据库,但与数据库不同的是,它处理的是文本文件,这些文件没有专门的存储格式,普通的人们就能编辑、阅读、理解和处理它们。而数据库文件往往具有特殊的存储格式,这使得它们必须用数据库处理程序来处理它们。既然这种类似于数据库的处理工作我们经常会遇到,我们就应当找到处理它们的简便易行的方法,UNIX有很多这方面的工具,例如sed、grep、 sort 以及 find 等等, awk 是其中十分优秀的一种。使用 awk 的第二个理由是awk 是一个简单的工具,当然这是相对于其强大的功能来说的。的确,UNIX有许多优秀的工具,例如UNIX天然的开发工具C 语言及其延续C+琳非常的优秀。但相对于它们来说,awk完成同样的功能要方 便和简捷得多。这首先是因为 awk 提供了适应多种需要的解决方案:从解决简单问题的 awk 命令行到复杂而精巧的 awk 程序设计语言,这样做的好处是,你可以不必用复杂的方法去解决本来很简单的问题。例如,你可以用一个命令行解决简单的问题,而 C不行,即使一个再简单的程序,C语言也
3、必须经过编写、编译的全过程。其次, awk 本身是解释执行的,这就使得 awk程序不必经过编译的过程,同时,这也使得它与shell script 程序能够很好的契合。最后,awk本身较C语言简单,虽然awk吸收了 C语言很多优秀的成分, 熟悉C语言会对学习awk有很大的帮助,但awk本身不须要会使用C语言一一 一种功能强大但需要大量时间学习才能掌握其技巧的开发工具。使用awk的第三个理由是awk是一个容易获得的工具。与 C和C+畸言不 同,awk只有一个文件(/bin/awk),而且几乎每个版本的UNIX都提供各自版本的 awk,你完全不必费心去想如何获得 awk。但C语言却不是这样,虽然 C语言是UNIX天然的开发工具,但这个开发工 具却是单独发行的,换言之,你必须为你的 UNIX版本的C语言开发工具单独付 费(当然使用 D 版者除外),获得并安装它,然后你才可以使用它。基于以上理由,再加上文本样式扫描相关的工作,awk 强大的功能,我们有理由说,如果你要处理与 awk 应该是你的第一选择。在这里有一个可遵循的般原则:如果你用普通的shell工具或shell script有困难的1试
4、试awk,如果awk仍 不能解决问题,则便用C语言,如果C语言仍然失败,则移至C+。3 .awk 的调用方式前面曾经说过, awk 提供了适应多种需要的不同解决方案,它们是:一、awk命令行,你可以象使用普通 UNIX命令一样使用awk,在命令行中 你也可以使用 awk 程序设计语言,虽然awk 支持多行的录入,但是录入长长的命令行并保证其正确无误却是一件令人头疼的事,因此,这种方法一般只用于解决简单的问题。当然,你也可以在shell script程序中引用awk命令行甚至awk 程序脚本。二、使用 -f 选项调用 awk 程序。 awk 允许将一段awk 程序写入一个文本文件,然后在awk 命令行中用 -f 选项调用并执行这段程序。具体的方法我们将在后面的 awk 语法中讲到。三、利用命令解释器调用 awk 程序:利用UNIX支持的命令解释器功能,我们可以将一段awk程序写入文本文件,然后在它的第一行加上:#!/bin/awk -f并赋予这个文本文件以执行的权限。这样做之后,你就可以在命令行中用类似于下面这样的方式调用并执行这段awk 程序了。awk 脚本文本名待处理文件4 .awk
《linuxawk完全手册》由会员人***分享,可在线阅读,更多相关《linuxawk完全手册》请在金锄头文库上搜索。
2023年危险化学品安全作业-重氮化工艺作业考试历年易错与难点高频考题荟萃含答案
医生年终个人述职总结范本(3篇).doc
八年级上册教案5426032106
安全文明施工处罚措施
《品德与社会》课堂活动化教学的有效性(2)
二年级丙班下期班主任工作计划
关于残疾人事业知识点
农村婚礼司仪主持词范文
2023年环境工作总结
秋季学前班主任工作计划书(二篇).doc
上饶二类机动车维修企业质量信誉考核结果
热交换器产品项目财务分析(参考) (1)
车辆转让协议参考范文(三篇).doc
护理毕业生自我总结.doc
私人房产买卖协议样本(六篇).doc
除草剂的使用原理
建筑环境与工程设备专业大学生实习报告范文
销售专员2023年度工作计划(三篇).doc
2023音乐教师工作总结(3篇).doc
工作述职报告范文集合九篇
2022-11-10 3页
2022-08-06 44页
2023-05-23 12页
2023-10-19 4页
2022-10-20 4页
2022-11-09 18页
2023-06-09 23页
2023-09-15 71页
2023-09-07 4页
2022-10-19 11页