http://qs321.pair.com?node_id=1197458


in reply to sed command with variable in perl

dear AnomalousMonk ;

thank you for your time. But it is not working in perl. I down know why? Shoudl i jusy replace my file name and i omitted the line for the $sol.because before that i read the variable from the text file and print it and it worked.any other point?

use strict; use warnings; die "usage: perl $0 file.name \n" unless @ARGV;; my $filename_in = "topol1.top"; print "processing '$filename_in' \n"; my $filename_out = "$filename_in.new"; open my $fh_in, '<', $filename_in or die "opening '$filename_in': $! +"; open my $fh_out, '>', $filename_out or die "opening '$filename_out': $ +!"; while (<$fh_in>) { s{ (SOL) [^\n]* }{$1 $sol1}xmsg; print $fh_out $_ or die "writing '$filename_out': $!"; } close $fh_in or die "closing '$filename_in': $!"; close $fh_out or die "closing '$filename_out': $!"; rename $filename_in, "$filename_in.bak" or die "renaming '$filename_in +': $!"; rename $filename_out, $filename_in or die "renaming '$filename_ou +t': $!";

2017-08-16 Athanasius added code tags