指定されたディレクトリ内のすべての .txt ファイルを検索するコードのセグメントが動作していますが、サブディレクトリを調べることができません。
スクリプトで 2 つのことを行う必要があります
- フォルダとそのすべてのサブディレクトリをスキャンしてテキスト ファイルを探す
- そのパスの最後のセグメントだけを出力します
たとえば、構造化されたディレクトリがあります
C:\abc\def\ghi\jkl\mnop.txt
path を指すスクリプトを作成しますC:\abc\def\
。次に、各サブフォルダーを調べて、そのフォルダーにmnop.txt
あるその他のテキスト ファイルを検索します。
その後、印刷されますghi\jkl\mnop.txt
私はこれを使用していますが、実際にはファイル名と、ファイルが現在そのディレクトリにあるかどうかのみを出力します。
opendir(Dir, $location) or die "Failure Will Robertson!";
@reports = grep(/\.txt$/,readdir(Dir));
foreach $reports(@reports)
{
my $files = "$location/$reports";
open (res,$files) or die "could not open $files";
print "$files\n";
}