sub dirname () { @date = (); $dirname = ""; @date = localtime(); $dirname = sprintf("%02d-%02d-%04d", $date[4]+1, $date[3], $date[5]+1900, @d ate); @dir = (); opendir(DIR, "$path") or die "LOG->Can't open $path: $!\n"; while (defined($file = readdir(DIR))) { if ($file =~ /^\.\.?$/) { next; } if ($file =~ /^\d{2}-\d{2}-\d{4}$/ && -d $file) { push(@dir, "$file"); } } close(DIR); $records = 0; $records = $#dir + 1; if ($records >= 5) { print LOG "Program Error 8 - @dir\n"; exit 1; } if ($records == 4) { foreach $item (sort { $b <=> $a } @dir) { rmtree("$path/$item") or die "LOG->Error is: $!\n"; last; } } if (! -d "$path/$dirname") { mkdir("$path/$dirname", 0777) or die "LOG->Error is: $!\n"; } }