I have 2 files having contents:
target.txt
----------
1=av
2
a=
#abc
4
b=
7
8
c=
5=abc
6=def
d=
8
9
source.txt
----------
a=100
c=200
b=400
d=300
I want to copy all the data of source.txt file & paste into target.txt file. i.e. find all the data of target.txt in source.txt file, if found in source.txt file then copy the contents of source.txt file & paste into target.txt file in same location, like below output.
target.txt
----------
1=av
2
a=100
#abc
4
b=400
7
8
c=200
5=abc
6=def
d=300
8
9
I have written a perl script, but it is not working properly.
Expand|Select|Wrap|Line Numbers
- #! /usr/bin/perl -w
- open SRC, "source.txt" or die $!;
- while($src=<SRC>)
- {
- chomp($src);
- $src =~ s/^\s*//;
- $src =~ s/\s*$//;
- ($f,$s)=split(/=/,$src);
- push(@spl_f_src, $f);
- push(@spl_s_src, $s);
- }
- open TGT, "+<target.txt" or die $!;
- while($tgt=<TGT>)
- {
- chomp($tgt);
- $tgt =~ s/^\s*//;
- $tgt =~ s/\s*$//;
- push(@OC,$tgt);
- }
- for ($mv=0;$mv<=$#spl_f_src;$mv++)
- {
- for($ad=0;$ad <= $#OC;$ad++)
- {
- if("$spl_f_src[$mv]=" eq $OC[$ad])
- {
- print "$spl_f_src[$mv]=$spl_s_src[$mv]\n";
- mv++;
- last;
- }
- else
- {
- print "$OC[$ad]\n";
- }
- $ad++:
- }
- }
- close(TGT);
- close(SRC);
~Thanks