Я пишу Perl-скрипт, который перебирает имена файлов в каталоге и его подкаталогах, используя следующий метод:
find(\&getFile, $mainDir);
sub getFile {
my $file_dir = $File::Find::name;
return unless -f $file_dir; # return if its a folder
}
Структура файла выглядит следующим образом:
main/classes/pages/filename.php
Однако из-за контроля версий каждая папка и подпапка имеет скрытый каталог .svn
, в котором есть дубликаты каждого файла с суффиксом .svn-base
:
main/.svn/classes/pages/filename.php.svn-base
Мне было интересно, существует лиоператор return, подобный тому, который я использовал ранее:
return if ($file_dir eq "something here");
, чтобы пропустить все папки .svn
, чтобы не найти имена файлов с суффиксом .svn-base
.Я возился с регулярными выражениями и искал часы без особой удачи.Я использую Perl только пару дней.