my $s = $MAXCYCLE; while ($s--) { $oldname = $s ? "$filename.$s" : $filename; $newname = join(".",$filename,$s+1); rename $oldname,$newname if -e $oldname; $s >= 0; }