AWK:基本语法和内置变量
程序员文章站
2022-07-10 10:27:09
...
文章目录
AWK Introduction
AWK 是一个非常强大的文本数据处理工具,通过对文件中的数据进行逐行读入并根据用户指定的分割方式进行切片处理,并且支持正则表达式的数据匹配模式,可以非常高效地进行数据的解析。
内置变量
在 awk 中常用的内置变量如下:
变量名 | 含义 |
---|---|
FNR | 文件中包含的记录的数量 |
NR | 已经读取的记录的数量(行数) |
NF | 文件中当前记录包含的字段数量(列的数量) |
FS | 在 BEGIN 中通过这个变量可以直接指定分隔符,等同于 -F
|
OFS | 输出的字段的分隔符(列分隔符) |
ORS | 输出的记录分隔符(行分隔符) |
$n | 当前记录的第 n 个字段的值,0 表示整条记录 |
FILENAME | 读取文件的文件名称 |
基本语法
awk -F 'delimeter' '{pattern}' '{action}' [filename]
其中:
-
delimeter
是用户指定的分隔符,默认为空格 -
pattern
可以是由正则表达式或者是逻辑判断语句单独或者共同组成的过滤条件 -
fielname
读取的输入数据文件
例如:
# setting.ini:
# username=root
# password=123
awk -F '=' 'print $2' setting.ini
# output:
# root
# 123
即,读取配置文件 setting.ini
,并且通过 =
进行分隔之后,打印出分隔结果中的第二个值,即 key=value
中的 value
。