微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从Perl中的目录中分辨文件

假设您正在构建一个Perl脚本来遍历文件系统并记录它找到的内容。当您打开文件句柄时,您需要知道您是在处理实际文件还是处理目录,您可以区别对待。你想要一个目录,所以你可以继续递归地解析文件系统。从目录告诉文件的最快方法是使用Perl内置的文件测试操作。Perl具有可用于测试文件不同方面的运算符。-f运算符用于标识常规文件而不是目录或其他类型的文件

推荐参考学习:《Perl教程

使用-f文件测试操作员

#!/usr/bin/perl -w
$filename = '/path/to/your/file.doc';
$directoryname = '/path/to/your/directory';
if (-f $filename) {
print This is a file.;
}
if (-d $directoryname) {
print This is a directory.;
}

首先,创建两个字符串:一个指向文件,另一个指向目录。接下来,使用-f运算符测试$ filename,它检查某些内容是否为文件

这将打印“这是一个文件”。如果在目录上尝试-f运算符,则不会打印。

然后,对$ directoryname执行相反的操作,并确认它实际上是一个目录。将它与目录glob 相结合,以排序哪些元素是文件,哪些是目录:

#!/usr/bin/perl -w
@files = <*>;
foreach $file (@files) {
if (-f $file) {
print This is a file:  . $file;
}
if (-d $file) {
print This is a directory:  . $file;
}
}

本篇文章就是关于从Perl中的目录中分辨文件方法介绍,希望对需要的朋友有所帮助!

原文地址:https://www.jb51.cc/csharp/1193303.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐