#check for dup name if (-e "$fn_out/$fname") { print "Dup:: $fn_out/$fname\n"; my ($name, $ext) = ($fname =~ /^(.+?)(\.[^.]+)?$/); $ext = "" unless $ext; my $i = 0; while (-e "$fn_out/$fname_new") { ++ $i; $fname_new = sprintf "$name-%02d$ext", $i; } my $uni = $fname_new; print "New:: $fn_out/$uni\n\n"; rename ("$fn_in/$fname", "$fn_out/$uni"); }else{ rename ("$fn_in/$fname", "$fn_out/$fname"); print "Dest:: $fn_out/$fname\n\n"; }