我有一个文件
文件.txt
LV_A=1;
LV_B=2;
LV_C=rr;
jfffkf LV_A dndd LV_B
hjhf LV_C
hjhf LV_Chjhf LV_C
hjhf LV_C
hjhf LV_C
hjhf LV_C
etc
我将创建文件调用replcae.txt
LV_A,1
LV_B,2
LV_C,rr
因此需要找到replace.txt的第1列,并将file.txt替换为repalce.txt中的匹配列2,但要从file.txt中的第4列开始或之后。
你能提供一个解决方案吗?
当我尝试使用全局命令时,它替换完整文件
答案1
while IFS="," read -r a b ; do sed -i '4,$'"s/$a/$b/g" files.txt;done <replcae.txt
输入:
LV_A=1;
LV_B=2;
LV_C=rr;
jfffkf LV_A dndd LV_B
hjhf LV_C
hjhf LV_Chjhf LV_C
hjhf LV_C
hjhf LV_C
hjhf LV_C
etc
输出:
LV_A=1;
LV_B=2;
LV_C=rr;
jfffkf 1 dndd 2
hjhf rr
hjhf rrhjhf rr
hjhf rr
hjhf rr
hjhf rr
etc
files.txt (END)
第一次忘记了....