perl目录文件操作–复制,移动,重命名

perl目录操作,

创建目录句柄指向要操作的目录。 打开目录句柄使用 opendir ;

opendir dirhandle,directory ;

例:取某目录下文件的列表:
opendir (e,’E:娱乐music阿杜’)|| die”can’t open e: $!” ;
@files=readdir e;
closedir(e) ;

for($index=0;$index<@files ;$index++){
print ”@files[$index]
“ ;
}

#输出指定目录下的所有文件(该目录不包含子目录)。

创建目录:mkdir
mkdir(‘d: est’,0755)||die ”can’t create directory: $!” ;

删除目录  rmdir
rmdir(‘d:perlwzj’)||die ”can’t remove diretory: $!”;  #删除之前目录必须为空。

在某一目录内找指定文件:
例:在d盘下找311.txt
use strict ;
use File::Find ;
sub wanted{
if ($_ eq ”311.txt”){
print $File::Find::name ;
print ”
“ ;
}
}
find &wanted ,”d:/”;

列出指定目录下所有的文件,包含子目录的内容:
use strict ;
use File::Find ;
sub wanted{
if (-f $File::Find::name){    #判断传入的是文件而不是目录。
print ”remove $File::Find::name ”;
print ”
“;
#  unlink $File::Find::name ;
}
}
find &wanted,’E:
eroContent’ ;

查找指定目录下某类型文件:
例:查找e盘下所有exe文件
use strict ;
use File::Find ;
sub wanted{
if (-f $File::Find::name){
if ($File::Find::name =~/.exe$/i){
print ”remove $File::Find::name ”;
print ”
“;
}

#  unlink $File::Find::name ;
}
}
find &wanted,’E://’ ;

文件复制
use File::Copy ;
use strict ;
copy(“d:/book/三国演义.txt”,”d:/book/aa”)||warn ”could not copy files :$!” ;
#将d:/book/三国演义.txt复制到d:/book/aa下
文件移动
use File::Copy ;
use strict ;
move(“d:/book/ss.txt”,”d:/book/aa”)||warn ”could not copy files :$!” ;

文件改名

use File::Copy ;
use strict ;
rename(“d:/perl/tt.txt”,”d:/perl/tttttt.txt”);
#将d:/perl/tt.txt改名为d:/perl/tttttt.txt

 

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>