不要忽略文件测试操作符

#获取文件大小

my $size = -s $filename ;



# 从指定目录中取得所有文件列表,检查是否为文本文件

my @textfiles = grep {-T}  glob "$dir_name/*";

1. 复用测试结果

如果要对同一个文件作多次文件测试操作符,可以使用虚拟文件句柄_(就是一个下划线字符),以节约不必要的开销。

它会告诉文件测试操作符,不必要再调用stat了,直接用上次测试的结果。

my @my_executables = grep {-o and -x _}  glob '*';

 

2.栈式文件测试

从Perl5.10开始,已经可以使用栈式文件测试了。对于同一个文件或文件句柄,可以同时进行多项属性测试。

use 5.010;



if(-r -w $file ) {

  print "File is readable and writeable\n";

}

你可能感兴趣的:(操作符)