my @files = ; foreach (reverse @files) { my $temp = $1 if /.*\.([0-6])$/; $temp++; my $old = $_; s/(.*\.)[0-6]$/$1$temp/; rename $old, $_; }