У меня есть Perl-скрипт, который я написал для поиска файлов, присутствующих в моих папках Windows, рекурсивно.Я ввожу текст поиска в качестве аргумента времени выполнения скрипта Perl, чтобы найти файл с этим текстом в своем имени.Сценарий perl выглядит следующим образом:
use Cwd;
$file1 = @ARGV[0];
#@res1 = glob "*test*";
#@res1 = glob "$file1*";
@res1 = map { Cwd::abs_path($_) } glob "$file1*";
foreach (@res1)
{
print "$_\n";
}
Но это не рекурсивный поиск во всех подкаталогах.Я знаю, glob
не совпадает рекурсивно.
Поэтому попытался использовать модуль File::Find
и функцию find(\&wanted, @directories);
Но я получил сообщение об ошибке find()
undefined.Из того, что я прочитал из справки, я подумал, что функция find()
определена по умолчанию при установке Perl, с некоторым базовым кодом для поиска папок / файлов.Разве это не правильно?
Вопросы, в приведенном выше сценарии Perl, как я могу рекурсивно искать файлы / папки?
Вторые вопросы, я обнаружил, что perldoc <module> help
не имеет примеровоб использовании определенной функции в этом модуле, которая прояснит это.
Можете ли вы указать на хорошую справку / документ / книгу по использованию различных функций perl из разных модулей perl с наглядными примерами использования этих функций модуля.