我想用文件b.com的50到130的第6,第7,第8列行替换文件a.com的20到100行的第3,第4和第5列行。我知道命令
awk 'NR==FNR {fld6[NR]=$6; fld7[NR]=$7; fld8[NR]=$8; next}
FNR>19 && FNR<101 {$3=fld6[FNR]; $4=fld7[FNR]; $5=fld8[FNR]}1' b.com a.com
- 如果a.com b.com的行号相同(20到100),将会工作,但在这里它们不是(a.com为20到100,b.com为50到130)。那么我如何用awk替换不同行号的文件列?
答案 0 :(得分:0)
您可以尝试将30添加到FNR
:
FNR>19 && FNR<101 {$3=fld6[FNR+30]; $4=fld7[FNR+30]; $5=fld8[FNR+30]}