[root@node2 ~]# cat test
This line of data is ingored
//空行
[root@node2 ~]# awk '/^$/{print "This is a blank line."}' test
This is a blank line.
This is a blank line.
This is a blank line.
This is a blank line.
[root@node2 ~]# awk '/data/' test
This line of data is ingored
记录和字段
[root@node2 ~]# echo 'zhangsan lisi wangwu'|awk '{print $3}' //打印第三个字段
wangwu
[root@node2 ~]# echo 'zhangsan lisi wangwu'|awk 'BEGIN{one=1;tow=2}{print $(one + tow)}' //定义变量打印$3,第三个字段
wangwu
// 打印出inet IP
[root@node2 ~]# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:45:ec:b2 brd ff:ff:ff:ff:ff:ff
inet 192.168.25.140/24 brd 192.168.25.255 scope global noprefixroute ens160
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe45:ecb2/64 scope link
valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:21:c2:3a brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr0 state DOWN group default qlen 1000
link/ether 52:54:00:21:c2:3a brd ff:ff:ff:ff:ff:ff
[root@node2 ~]# ip a|grep 'inet '|grep -v '127.0.0.1'|awk -F '[ /]+' '{print $3}'192.168.25.140
192.168.122.1
[root@node2 ~]# cat run
john 8592789488
andrea 899075908692
jasper 84888092849483[root@node2 ~]# awk '{print NF}' run 678[root@node2 ~]# awk '{print $NF}' run 889283
NR行号 NF变量定义为当前输入记录的字段个数(即有几列)
[root@node2 ~]# cat run
john 8592789488
andrea 899075908692
jasper 84888092849483[root@node2 ~]# awk '{print NR $1}' run
1john
2andrea
3jasper
[root@node2 ~]# awk '{print NR "." $1}' run 1.john
2.andrea
3.jasper
[root@node2 ~]# awk '{print NR "." $0}' run 1.john 85927894882.andrea 8990759086923.jasper 84888092849483
[root@node2 ~]# cat run
john 8592789488
andrea 899075908692
jasper 84888092849483[root@node2 ~]# awk 'BEGIN{FS="\n";RS=""}{print $1}' run
john 8592789488[root@node2 ~]# awk 'BEGIN{FS="\n";RS=""}{print $3}' run
jasper 84888092849483