単純に現在フォルダ以下のすべてのファイル名を取得するには、以下のコードで十分です。
@files=<*>; #カレントディレクトリ内の全ファイル名を取得
現在のフォルダから再帰的にすべてのファイル・フォルダ名を取得するには、以下のコードが必要です。
use File::Find;
@directories_to_search = ('./'); #(複数の指定可
find(\&wanted, @directories_to_search);
#--------------------------------------------
#ファイルが見つかる度に呼び出される
#--------------------------------------------
sub wanted {
print $File::Find::dir, '/'; #カレントディレクトリ
print $_; #ファイル名
print "\n";
#フルパスのファイル名
#print $File::Find::name, "\n";
}
他には、以下のものもあります。
- glob() #ディレクト名でファイルの一覧取得
- opendir() #ファイルハンドラでファイルの一覧を取得。opendirとreaddirと一緒に使う
0 件のコメント:
コメントを投稿