dirsort
# cpan File::List # cpan Set::Array $list = dir.list; foreach $entry ($list){ $date = $entry.substring(3,4) $set->add(date=>$date, entry=>$entry) } $set{date}->sort(desc); $idx= btreeFind($currenttime-2 >= $set{date}); $sortedList = $set->slice($idx, $set->last){entry};
みたいに出来たらいいなあ。
全然とちゅう
#!/usr/bin/perl $dir = "./target"; $file_pattern = "\.log\$"; $current = "201104010103"; use File::List; my $search = new File::List($dir); my @files = @{ $search->find($file_pattern) }; foreach $entry (@files){ $start = length($dir)+1; $end = length($entry)-$start-length(".log"); $val = substr($entry, $start, $end); print $val; print "\n"; }
ファイルリストを得るところまで。