awk语言最基本功能是在文件或者字符串中基于指定规则浏览和抽取信息,awk抽取信息后,才能进行其他文本操作。完整的awk脚本通常用来格式化文本文件中的信息。
通常,awk是以文件的一行为处理单位的。awk每接收文件的一行,然后执行相应的命令,来处理文本。
awk命令格式:awk
'{pattern + action}'
{filenames}
pattern
表示awk
在数据中查找的内容,而 action 是在找到匹配内容时所执行的一系列命令。
其中
$0 表示整个当前行
$1 每行第一个字段
NF 字段数量变量
NR 每行的记录号,多文件记录递增
awk '{print $0}' test.py
等同:
cat test.py
// awk以行作为处理单位
-F参数:指定分隔符,可指定一个或多个 【默认空格作为分割符】
如果使用多个分隔符,先使用空格分割,然后对分割结果再使用“,”分割
👆上面的例子-F进行分割时,指定了两个分隔符,分别是“,”和空格,输出第三个和第七个元素,两个元素中间用空格分开
👆的例子是查看文件第二行到第三行的内容,$0 和 $1 的区别在于输出本行还是输出第一个元素,默认使用空格进行分割