awk参数的使用-FS|OFS|NR|FNR

1.FS 输入字段分隔符,默认是空格

[root@VM-4-13-centos awk]# cat ip.txt 
10.10.49.100 192.1.1.1
10.10.49.101 192.2.2.2
10.10.49.100 192.3.3.3
10.10.49.102 192.4.4.4
10.10.49.101 192.5.5.5
10.12.49.100 192.6.6.6
[root@VM-4-13-centos awk]# cat ip.txt | awk 'BEGIN{FS="."}{print $1,$2,$3}'
10 10 49
10 10 49
10 10 49
10 10 49
10 10 49
10 12 49

2.OFS 输出行分隔符,默认为换行符

[root@VM-4-13-centos awk]# cat ip.txt | awk 'BEGIN{FS=".";OFS="###"}{print $1,$2,$3}'
10###10###49
10###10###49
10###10###49
10###10###49
10###10###49
10###12###49

 3.NR,FNR

都是指的行号,从1开始,操作单个文件时,都是一样的效果。操作多个文件时,NR都是算的总行号,FNR是单个文件算的。

[root@VM-4-13-centos awk]# cat ip.txt 
10.10.49.100 192.1.1.1
10.10.49.101 192.2.2.2
10.10.49.100 192.3.3.3
10.10.49.102 192.4.4.4
10.10.49.101 192.5.5.5
10.12.49.100 192.6.6.6
[root@VM-4-13-centos awk]# cat cj.txt 
A B C D
30 40 50 60 
30 40 50 
30 40 50 60
30 40 
[root@VM-4-13-centos awk]#  awk '{print NR}'  ip.txt cj.txt 
1
2
3
4
5
6
7
8
9
10
11
[root@VM-4-13-centos awk]#  awk '{print FNR}'  ip.txt cj.txt 
1
2
3
4
5
6
1
2
3
4
5

 

posted @ 2023-02-14 09:21  家乐福的搬砖日常  阅读(175)  评论(0编辑  收藏  举报