[AWK]大文件替换
请教各位大牛
我有两个文件,一个1.txt如下
!Record 1
START_MSG 14:15:00:000;
TYPE Record Response;
Size 14;
Ladd FF1111;
RIC_Name CFG;
Status 0;
Temp_No 2;
RTL 0;
END_FIC_Data;
END_MSG;
!
一个包含10million的字符如下2.txt
ABC
DEF
GHI
需要把1.txt文件中RIC_Name CFG;这一行的CFG分别替换成ABC, DEF, GHI,该怎么做呢?
!Record 1
START_MSG 14:15:00:000;
TYPE Record Response;
Size 14;
Ladd FF1111;
RIC_Name ABC;
Status 0;
Temp_No 2;
RTL 0;
END_FIC_Data;
END_MSG;
!
START_MSG 14:15:00:000;
TYPE Record Response;
Size 14;
Ladd FF1111;
RIC_Name DEF;
Status 0;
Temp_No 2;
RTL 0;
END_FIC_Data;
END_MSG;
!
START_MSG 14:15:00:000;
TYPE Record Response;
Size 14;
Ladd FF1111;
RIC_Name GHI;
Status 0;
Temp_No 2;
RTL 0;
END_FIC_Data;
END_MSG;
!
写了一个awk脚本
BEGIN {
FS = " ";
while(getline<"1.txt">0)
{
print $1;
nvar = $1;
}
}
{
if($1 == "RIC_Name")
{
$2 = " "nvar";";
}
print ;
}
但是每次只能把2.txt里面最后一行字符替换进去.
大虾们帮我看看该怎么改呢??