ディレクトリを開き、作成された時刻でファイルを並べ替える必要があります。Perl、ソート、およびファイルのタグを使用して、変更日に基づいてファイルをソートすることについての議論を見つけることができます。これは、作成日による並べ替えよりも一般的なニーズだと思います。私はパールを使用しています。php や java など、Perl 以外の言語での作成日による並べ替えに関する以前の投稿がいくつかあります。
たとえば、次のことを行う必要があります。
opendir(DIR, $ARGV[0]);
my @files = "sort-by-date-created" (readdir(DIR));
closedir(DIR);
do things with @files...
CPAN には sort コマンドに関するページがありますが、私にはあまりアクセスしにくく、ページに「日付」または「作成」という言葉が見つかりません。
編集に応じて、私はMac、OS 10.7を使用していると言わなければなりません. Finder には作成日による並べ替えオプションがあるので、このシステムのファイルに何らかの方法で添付された作成日を示す何らかの表示があるはずです。
回答に応じて、ファイルをソートしようとする別のバージョンのスクリプトを次に示します。
#!/usr/bin/perl
use strict; use warnings;
use File::stat; # helps with sorting files by ctime, the inode date that hopefully can serve as creation date
my $usage = "usage: enter name of directory to be scanned for SNP containing lines\n";
die $usage unless @ARGV == 1;
opendir(DIR, $ARGV[0]); #open directory for getting file list
#my @files = (readdir(DIR));
my @file_list = grep ! /^\./, readdir DIR;
closedir(DIR);
print scalar @file_list."\n";
for my $file (sort {
my $a_stat = stat($a);
my $b_stat = stat($b);
$a_stat->mtime <=> $b_stat->mtime;
} @file_list ) {
say "$file";
}