У меня есть сегмент кода, который работает, который находит все .txt-файлы в заданной директории, но я не могу заставить его искать в подкаталогах.Perl находит файл, основанный на его расширении, через все подкаталоги
мне нужен мой сценарий, чтобы сделать две вещи
- сканирования через папку и все его подкаталоги для текстового файла
- Распечатайте только последние сегменты пути
Для Например, у меня есть каталог, структурированный
C:\abc\def\ghi\jkl\mnop.txt
Сценарий, который указывает на pa th 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";
}
является '$ location' должным образом заполненным населением? –
Да, я заполняю его выше в коде (не показан) – Heuristic
Если его предполагается переписывать через поддиректории, вероятно, сработает запись рекурсивной подпрограммы. – mzedeler