Linux下awk内置变量怎么用
Linux下awk内置变量主要有两类:一类是内置变量,另一类是自定义变量。
内置变量一般分为两类:局部变量和全局变量。局部变量是指在awk程序块中定义的变量,只在该程序块中可用;全局变量是指在awk程序块外定义的变量,在所有程序块中都可用。
自定义变量一般分为两类:变量和数组。变量是指在awk程序中使用的普通变量,数组是指在awk程序中使用的数组变量。
下面介绍一下Linux下awk内置变量的使用。
一、局部变量
1、NR
NR表示当前记录数,也就是awk处理到目前为止的记录数。
2、NF
NF表示当前记录中的字段数,也就是当前记录中有多少个字段。
3、FILENAME
FILENAME表示当前输入文件的名称。
4、FNR
FNR表示当前记录数,但是只针对当前输入文件计算。
二、全局变量
1、ARGC
ARGC表示awk命令行中参数的个数。
2、ARGV
ARGV表示awk命令行中参数的数组。
3、ENVIRON
ENVIRON表示环境变量的数组。
三、自定义变量
1、变量
变量是指在awk程序中使用的普通变量,变量的声明格式为:
变量名=变量值
变量名可以由字母、数字、下划线组成,但是不能以数字开头。
变量的使用格式为:$变量名
例如:
awk '{a=1;b=2;print a,b}'
输出结果为:1 2
2、数组
数组是指在awk程序中使用的数组变量,数组的声明格式为:
数组名[下标]=数组元素值
数组名可以由字母、数字、下划线组成,但是不能以数字开头。
数组的使用格式为:$数组名[下标]
例如:
awk '{a[1]=1;a[2]=2;print a[1],a[2]}'
输出结果为:1 2
相关文章