(5)awk划分字段的3种方式
详细分析awk字段分割 awk读取每一条记录之后,会将其赋值给 $0 ,同时还会对这条记录按照 预定义变量FS 划分字段,将划分好的各个字段分别赋值给 $1 $2 $3 $4...$N ,同时将划分的字段数量赋值给 预定义变量NF 。 引用字段的方式 $N引用字段: N=0:即$0,引用记录本身 0<N<=NF:引用对应字段 N>NF:表示引用不存在的字段,返回空字符串 N<0:报错 可使用变量或计算的方式指定要获取的字段序号。 [root@docker-01 ~]# awk '{n = 5;print $n}' a.txt email abc@qq.com def@gmail.com aaa@163.com bbb@189.com ccc@xyz.com ddd@139.com exdsa@189.com bax@qq.com bc@sohu.com bcbd@139.com [root@docker-01 ~]# awk '{print $(2+2)}' a.txt # 括号必不可少,用于改变优先级 age 28 24 21 21 18 22 25 20 23 27 [root@docker-01 ~]# awk '{print $(NF-3)}' a.txt gender male female male male male female female male female