0
-e  File exists.

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

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

next unless (-e $dir . "/dirname");             -e only for file so doesnt work

我试图避免opendir and grep寻找目录名,因为它似乎有点矫枉过正。

更新的问题:
perl concat $dir 。执行 -e 或 -d 检查之前的“/dirname”?

4

1 回答 1

8

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

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

所以你要:

-d "$dir/dirname" or next;
于 2013-08-04T20:49:15.113 回答