my $file = "foo.c"; rename "sample.csv", "sample.csv.bak" or die "Error backing up sample.csv: $!"; open my $IN, "<", "sample.csv.bak" or die "Error reading sample.csv.bak: $!"; open my $OUT, ">", "sample.csv" or die "Error writing to sample.csv: $!"; while (defined(my $line = <$IN>)) { $line =~ s/\Q$file\E/$file,=SUM(B$x:B$y)/; print $OUT $line; }