如何使用awk将某一个文件的某一行替换到另一个文件的某一行

2025-03-05 21:12:05
推荐回答(1个)
回答(1):

这里用 awk 没有 sed 方便,例如要将 b.txt 的第 3 行替换成 a.txt 的第 2 行(数字请自己替换)

export s=`awk 'NR==2' a.txt`
awk 'NR==3{$0=ENVIRON["s"]};1' b.txt > c.txt

s=`awk 'NR==2' a.txt` 表示将第2行赋值给s, $0=ENVIRON["s"] 表示替换,结果存在c.txt

用 sed 解决更方便

sed -i "3s/.*/`sed -ne 2p a.txt`/" b.txt

直接修改 b.txt