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

让'说你'重建Perl脚本来遍历文件系统并记录它的发现。当您打开文件时,您需要知道您是否'正在处理实际文件或使用不同对待的目录。您想绘制一个目录,所以您可以继续递归地解析文件系统。从目录中告诉文件的最快方法是使用Perl's内置文件测试运算符.Perl有可用于测试文件不同方面的运算符。-f运算符用于标识常规文件,而不是目录或其他类型的文件。

Using the-f File Test Operator

 #!/usr/bin/perl-w
$文件名='/path/to/your/文件.doc';
$directoryname=&##39;;
if(-f$filename科普传播){
print"这是一个文件。";
}
if(-d$directoryname){
print"这是一个目录。&##34;;
}

首先,创建两个字符串:一个指向文件,一个指向目录。接下来,使用-f运算符测试$文件名,该运算符检查是否有文件。这将打印"这是一个文件。"如果您尝试目录上的-f运算符,它不会打印't打印。然后,对$directoryname执行相反的操作,并确认它实际上是一个目录。将其与目录glob组合以排序哪些元素是文件,哪些是目录:

##!/usr/bin/perl-w
@files=<*>;
foreach$file(@files){
if(-f$file){
print"这是一个文件:&35; 34。$file;
}
if(-d$file){
print"这是一个目录:"。$file;
}
}

Perl文件测试运算符的完整列表可在线获得。