perl文件测试

perl中文件测试的操作符及意义

测试文件的权限:

-r 文件或者目录对目前(有效的)用户是可读的

-w 文件或者目录对目前(有效的)用户是可写的

-x  文件或者目录对目前(有效的)用户是可执行的

-o   文件或者目录有对目前(有效的)用户拥有

-R 文件或者目录,对实际的用户或组来说是可读的

-W 文件或者目录,对实际的用户或者组来说是可写的

-X 文件或者目录,对实际的用户或者组来说是可执行的

-O 文件或者目录,有实际的用户拥有

测试文件的存在:

-e  文件或者目录是存在的

-z  文件存在但没有内容

-s  文件或者目录存在

测试文件的类型:

-f  是普通文件

-d  是目录

-l  是符号链接

-S socket类型文件

-p 是命名管道

-b  是块设备文件

-c  是字符设备文件

-u  文件或目录设置了setuid

-g  文件或目录设置了setguid

-k  文件或者目录设置了sticky

-t  文件句柄是TTY设备

-T  文本文件

-B 二进制文件

测试文件的时间:

-M  最后一次被修改至今的天数

-A 最后一次被访问至今的天数

-C  最后一次文件节点编号被变更后至今的天数

下面的perl程序可以查看一个目录下的文件是否是可读可写可执行的,目录名由命令行传入。

#!/usr/bin/perl -w
opendir(FH,"@ARGV[0]");
my @list=readdir FH;
closedir(FH)
foreach my $file (@list){
if (-r -w -x $file){
print "$file is readable,writeable and excuteable\n"
}
}

你可能感兴趣的:(perl,文件测试)