В Linux, вы можете использовать «найти» Linux и команды «Grep» и запустить те команды Linux в Perl, используя QX для хранения результата команды Linux в Perl.
например.
$cmd = "find . | grep -v 'dir1\|dir2\|...\|dirn'";
$result=qx($cmd);
Вышеприведенные комбинаций команд выполните следующие действия:
- Команда находки перечислит все директории и файлы рекурсивно.
- Труба "|" пройдет результат поиска, чтобы Grep команду
- В Grep -v команда выведет на экран только строка не существует в «dir1», «dir2» ... «DIRN», чтобы быть проигнорировано
- наконец, команда qx выполнит команды find и grep Linux и сохранит результат в переменной $ result.
Вы можете сделать подобную вещь в Windows. Единственное различие заключается в использовании командной строки Windows.
например.
$result=qx('dir /b/s | find /v "workspace" | find /v "TVM"')
Вышеприведенная команда перечислит всю директорию рекурсивно, за исключением того, что в каталоге есть имя «рабочая область» или «ТВМ».
Если у вас уже есть код, который вы пробовали, измените свой вопрос и вставить его. Таким образом, мы можем видеть, что вы сделали усилие, и направлять вас к решению (в отличие от написания кода для вас в целом). – stevieb
[Посмотрите на это] (http://stackoverflow.com/questions/36822986/print-files-and-subdirectories-of-given-directory/36823076#36823076) и включите что-то, чтобы показать усилия, вы не можете просто попросите нас написать здесь код. – AbhiNickz