die "usage: perl $0 file_nm line_nb col_start col_end replacement \n" unless @ARGV; die "Invalid number of arguments \nusage: perl $0 file_nm line_nb col_start col_end replacement \n" if @ARGV ne 5; my ($file_nm,$line_nb,$col_start,$col_end,$string)=@ARGV; chomp($content=`perl -ne "print if $. == ${line_nb}" $file_nm`); #get the specific line from file chomp ($replacement=`perl -ne "substr($content, $col_start, $col_end, $string);print $content"`); #get the replaced line #print "New content \n$content \n"; `perl -pi -e "s/$content/$replacement/" $file_nm`; #now substitute the whole line with the new replaced line