一、awk基本操作
awk指定多个分割符,分隔符中有:和空格,还有:和空格的组合,这个时候需要指定多个分隔符 -F'[ :]+',[ :]表示分隔符为:和空格,一个或者多个+号表示空格和:的组合也为一个分隔符
打印倒数第一列,以空格和:and空格 “:”的组合为分隔符 [root@VM_0_84_centos ~]# cat aaa |awk -F'[: ]+' '{print $NF}' number 100 0 #打印倒数第二列,以空格和:and空格 “:”的组合为分隔符 [root@VM_0_84_centos ~]# cat aaa |awk -F'[: ]+' '{print $(NF-1)}' age 27 30
假如分隔符为空格,打印第一列 $1为第一列的数据 $0打印整个文件的内容
cat aaa |awk '{print $1}'
二、awk的NR、NF内置变量的应用
NF变量的使用:打印文件的字段数,NF指的是字段的数量,有时候由于文本数据量太大,而且字段切分不规则,会导致使用 '{print $n}'取值会出现错误,建议使用NF来取响应的字段
[root@VM_0_84_centos ~]# cat aaa name: age number ghd 27 100 gym 30 0 [root@VM_0_84_centos ~]# cat aaa |awk '{print NF}' 3 3 3 [root@VM_0_84_centos ~]# cat aaa |awk '{print $NF}' number 100 0 [root@VM_0_84_centos ~]# cat aaa |awk '{print $(NF-2)}' name: ghd gym [root@VM_0_84_centos ~]# cat aaa |awk '{print NF}'