#!/usr/bin/perl use strict; use warnings; use Date::Format; my ($input_file, $output_file) = @ARGV; my $date = time2str("%Y-%m-%d", time); #print "\n\n$date\n\n"; ## works open my $input, '<', $input_file or die "Open failure on $input_file: $!"; my @contents = (); while (defined (my $line = <$input>)) { $line =~ s/(\d\d\d\d-\d\d-\d\d)(-[a-z_]{5,30}\.zip)/$date$2/; push @contents, $line; } close $input; open my $output, '>', $output_file or die "Open failure on $output_file: $!"; foreach my $line (@contents) { print $output $line; } close $output;