hi Gurus, I have a problem to replace strings of file thru perl script.
Here is the problem in detail... I have a text file some thing like this.. PROJ_FOLER=C:\Proj PROJ_LOGS=C:\PROJ\LOGS I have same line in config file some thing like this. PROJ_FOLDER=D:\Proj PROJ_LOGS=D:\PROJ\LOGS. Now i read variables from text file split them like this my ($key,$val)= $line =~ /^(\w+)=(.+)$/mg ; and place both in a varaible $rep_line="$key=$val"; and search in the config file with $key (which has PROJ_FOLDER) and get to the result to $line. Now i will replace $line with $rep_line using perl -i -p -e 's/$line/$rep_line/g' $file; Here is the code i have written... BEGIN________ #!/usr/bin/perl my $config_path="E:/MessageArchive/WorkArea/config.txt"; $file="E:/temp/FT/config/FTMessageArchive.configd"; open FH, "$config_path"; while ($line=<FH>) { my ($key,$val)= $line =~ /^(\w+)=(.+)$/mg ; $repline="$key=$val"; open $LOGFILE, '<', $file; while ($line1 = <$LOGFILE> ) { if ($line1 =~ m/$key/){ system("perl -i.bak -p -e 's/$line1/$repline/g' $file");close $LOGFILE;last;} } } close(FH); END _____________ if i run the script I am getting the following errror.. Can't find string terminator "'" anywhere before EOF at -e line 1. Can't find string terminator "'" anywhere before EOF at -e line 1. Can't find string terminator "'" anywhere before EOF at -e line 1. Can't find string terminator "'" anywhere before EOF at -e line 1. Can't find string terminator "'" anywhere before EOF at -e line 1. Can't find string terminator "'" anywhere before EOF at -e line 1. Can't find string terminator "'" anywhere before EOF at -e line 1. What am i doing wrong? Please help me on this.. Thanks in Advance PP..