perl文件和目录操作

前端之家收集整理的这篇文章主要介绍了perl文件和目录操作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

http://blog.csdn.net/aldenphy/article/details/7855177

文件检测操作符
-e 文件是否存在
-f 文件是普通文件
-d 文件是目录
-r 文件是否可读
-w 文件时候可写
-x 文件是否可执行
-s 文件存在且大小非零,返回文件大小的字节数
-z 文件存在且大小为0
-B 文件是二进制文件
-T 文件是文本文件
-A 距离上次文件被访问年限
-M 距离上次文件修改年限            int(var) 函数取整
-C 距离创建文件的年限
   
   
更改访问许可权限
chmod (mode,fileList)  mode为四位数字,0XXX
rename (fileName,newFileName)
注:创建新文件,旧文件删除,如果已存在newFileName文件则覆盖 。成功返回1
unlink (fileList) 即删除所有硬链接,返回删除文件个数
glob("标识") # 引号不能少
<"标识">
标量环境:返回匹配的第一个文件
列表环境:返回匹配的文件列表
目录操作:
opendir (DIR,fileDir)
readdir(DIR) 返回文件列表
closedir DIR
需求实例:遍历一个文件夹,并将其中的某些文件更名

#  功能:将目标目录下的以.logbak结尾的文件更名为.log
 目录操作函数可以在相对路径下工作

use  strict;

 warnings;


sub  changeName {

    
chdir   shift ;

    
print  `pwd`;   打印当前目录      for my   $file  ( glob ( " * )) {    glob不会包含.和.. 目录          if - ) {

            
 ( );    子目录一直保持在当前目录工作              & changeName(`pwd`);

            
.. );

        }

        
elsif && =~ / .+ )( . logbak)$ i) {

            
f $ 1 .log ) {   防止更名误覆盖文件                  rename  ($ , $ .newlog );

            }

            
);

        }

    }

}

            


changeName(  参数为目标目录


$path =  `pwd`;

chomp ;       `pwd`命令结尾有个回车符,需要chomp去掉 $path  ;

opendir  DIR  || die cant open $! foreach readdir  DIR) {      readdir 将读出所有的文件和目录,包括.和.. $file  ;

}

猜你在找的Perl相关文章