NR,NF,FNR

 AWK中有这3个参数
NR=行号    NF=多少列   FNR在单个文件中是和NR一样的  但是多个文件中就有区别举例而说明一目了然
[leo@leo ~]$ cat a
a b c
b c a
c a b
a a a
b b b
c c c
[leo@leo ~]$ cat b
a b c
b c a
c a b
1 1 1
2 2 2
3 3 3
[leo@leo ~]$ awk '{print NR"\t"$0}' a b
1       a b c
2       b c a
3       c a b
4       a a a
5       b b b
6       c c c
7       a b c
8       b c a
9       c a b
10      1 1 1
11      2 2 2
12      3 3 3
[leo@leo ~]$ awk '{print FNR"\t"$0}' a b
1       a b c
2       b c a
3       c a b
4       a a a
5       b b b
6       c c c
1       a b c
2       b c a
3       c a b
4       1 1 1
5       2 2 2
6       3 3 3
大家看清楚行号就知道是怎么回事了。
现在我要将a b文件合并在一起,就可以通过NR和FNR在多文件下表示不一样进行操作
awk 'NR==FNR{a[NR]=$0}NR>FNR{a[FNR]=$0,print $0}' a b
a b c a b c
b c a b c a
c a b c a b
a a a 1 1 1
b b b 2 2 2
c c c 3 3 3
 
 

你可能感兴趣的:(awk,合并,NR,休闲,NFR)