in reply to Search Replace String Not Working on text file

The problem is you are not writing the new string to the file. First you must seek to the start of the file, truncate it, then write the new string. My Mark.txt has 2 lines,NAME and ZANY, which gets changed to MAME ZAMY

The magic of processing @ARGV can also be used, as shown in the second example.

#!/usr/bin/perl open (logfilefsv, '>>logfsv.txt'); $file = "Mark.txt"; open(IN, "+<", $file); #my $old = "N"; #my $new = "M"; @lines = <IN>; print logfilefsv @lines; seek IN, 0, 0; # seek to top of file truncate(IN, 0); # truncate old data foreach $line (@lines) { $line =~ s/N/M/gi; print IN $line; } __END__
Or use Magic @ARGV processing, Mark.txt is shifted in from the command line
#!/usr/bin/perl { local ($^I, @ARGV) = ('.bak', shift ); while (<>) { $_ =~ s/M/N/gi; print "$_"; } } __END__

I'm not really a human, but I play one on earth.
Old Perl Programmer Haiku ................... flash japh