Вы можете использовать оператор проверки файлов -d , чтобы проверить, является ли каталог каталогом. Вот некоторые из наиболее полезных операторов проверки файлов
-e File exists.
-z File has zero size (is empty).
-s File has nonzero size (returns size in bytes).
-f File is a plain file.
-d File is a directory.
-l File is a symbolic link.
Подробнее см. perlfunc
Также попробуйте использовать File :: Find , который может найти каталоги для вас. Вот пример, который ищет каталоги ....
sub wanted {
if (-d) {
print $File::Find::name." is a directory\n";
}
}
find(\&wanted, $mydir);