概述
awk是个优秀文本处理工具,可以说是一门程序设计语言。下面是awk内置变量。
一、内置变量表
属性
说明
$0
当前记录(作为单个变量)
$1~$n
当前记录的第n个字段,字段间由FS分隔
FS
输入字段分隔符默认是空白字符(允许字符串作为分隔符,注意元字符转义,FS只有在它超过一个字符的时候
,才会被视为正则表达式)
NF
当前记录中的字段个数,就是有多少列
NR
已经读出的记录数,就是行号,从1开始,如果多个文件的时候会比FNR大
RS
输入的记录他隔符默认为换行符
OFS
输出字段分隔符默认也是空格
ORS
输出的记录分隔符,默认为换行符,如果要改变必须字段上有操作$1=$1
ARGC
命令行参数个数,输入文件的个数+1
ARGV
命令行参数数组,ARGV[0]程序名,ARGV[1...]输入文件名
FILENAME
当前输入文件的名字
IGNORECASE
如果为真,则进行忽略大小写的匹配
ARGIND
当前被处理文件的ARGV标志符,即文件序号,某些awk没有该内置变量,gawk的扩展
CONVFMT
数字转换格式%.6g
ENVIRON
UNIX环境变量
ERRNO
UNIX系统错误消息
FIELDWIDTHS
输入字段宽度的空白分隔字符串
FNR
当前文件的记录数
OFMT
数字的输出格式%.6g
RSTART
被匹配函数匹配的字符串首
RLENGTH
被匹配函数匹配的字符串长度
SUBSEP