高级文本处理与脚本技巧
1. awk 高级文本处理
awk 是一个专门用于处理数据流的工具,它可以对列和行进行操作,支持许多如 C 语言中的数组和函数等内置功能,其最大的优势在于灵活性。
1.1 awk 脚本结构
awk 脚本通常由三部分组成:BEGIN、END 和带有模式匹配选项的通用语句块,这三部分都是可选的。其结构如下:
awk ' BEGIN{ print "start" } pattern { commands } END{ print "end" } file
awk 命令也可以从标准输入读取数据。
1.2 编写简单的 awk 脚本
可以用单引号或双引号来编写简单的 awk 脚本,示例如下:
awk 'BEGIN { statements } { statements } END { end statements }'
或者
awk "BEGIN { statements } { statements } END { end statements }"
例如:
$ awk 'BEGIN { i=0 } { i++ } END{ print i}' filename