Perl目录存在等效的-e

eal*_*eon 0 directory perl file-type stat

-e  File exists.
Run Code Online (Sandbox Code Playgroud)

是否有一个目录存在?因为我没有在http://perldoc.perl.org/functions/-X.html上看到它

或者什么是测试它的最佳方法?

next unless (-e $dir . "/dirname");             -e only for file so doesnt work
Run Code Online (Sandbox Code Playgroud)

我试图避免opendir and grep找到dirname,因为它似乎有点矫枉过正.

更新的问题:
perl concat $ dir.在执行-e或-d检查之前"/ dirname"?

amo*_*mon 8

使用-d测试查看给定路径是否是目录.在那种情况下,-e也会返回true,因为那会测试是否存在某些文件系统对象.

要查看路径是否指向普通文件(没有目录,没有符号链接,没有特殊文件),请使用-f.

所以你要:

-d "$dir/dirname" or next;
Run Code Online (Sandbox Code Playgroud)