AWK AWK是一种优良的文本处理工具Linux及Unix环境中现有的功能最强大的数据处理引擎之一这种编程及数据操作语言其名称得自于它的创始人阿尔佛雷德艾侯彼得溫伯格和布萊恩柯林漢姓氏的首个字母的最大功能取决于一个人所拥有的知识AWK提供了极其强大的功能可以进行正则表达式的匹配样式装入流控制数学运算符进程控制语句甚至于内置的变量和函数它具备了一个完整的语言所应具有的几乎所有精美特性实际上AWK的确拥有自己的语言AWK程序设计语言三位创建者已将它正式定义为样式扫描和处理语言它允许创建简短的程序这些程序读取输入文件为数据排序处理数据对输入执行计算以及生成报表还有无数其他的功能gawk是AWK的GNU版本 最简单地说AWK是一种用于处理文本的编程语言工具AWK在很多方面类似于Unix shell编程语言尽管AWK具有完全属于其本身的语法它的设计思想来源于SNOBOLsedMarc Rochkind设计的有效性语言语言工具yacc和lex当然还从C语言中获取了一些优秀的思想在最初创造AWK时其目的是用于文本处理并且这种语言的基础是只要在输入数据中有模式匹配就执行一系列指令该实用工具扫描文件中的每一行查找与命令行中所给定内容相匹配的模式如果发现匹配内容则进行下一个编程步骤如果找不到匹配内容则继续处理下一行