Чтобы узнать, существует ли файл перед его использованием, мы можем использовать:
if (-e "filename.cgi") { #proceed with your code }
Но как определить, существует каталог или нет?
Использовать -d ( полный список тестов файлов )
-d
if (-d "cgi-bin") { # directory called cgi-bin exists } elsif (-e "cgi-bin") { # cgi-bin exists but is not a directory } else { # nothing called cgi-bin exists }
Как примечание, -e не различает файлы и каталоги. Чтобы проверить, существует ли что-то и является ли он простым файлом, используйте -f.
-e
-f