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]\n" ; } #输出指定目录下的所有文件(该目录不包含子目录)。 创建目录:mkdir mkdir('d:\test',0755)||die "can't create directory: $!" ; 删除目录 rmdir rmdir('d:\perl\wzj')||die "can't remove diretory: $!"; #删除之前目录必须为空。 在某一目录内找指定文件: 例:在d盘下找311.txt use strict ; use File::Find ; sub wanted{ if ($_ eq "311.txt"){ print $File::Find::name ; print "\n" ; } } find \&wanted ,"d:/"; 列出指定目录下所有的文件,包含子目录的内容: use strict ; use File::Find ; sub wanted{ if (-f $File::Find::name){ #判断传入的是文件而不是目录。 print "remove $File::Find::name "; print "\n"; # unlink $File::Find::name ; } } find \&wanted,'E:\nero\Content' ; 查找指定目录下某类型文件: 例:查找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 "\n"; } # 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 |
|
来自: herowuking > 《Perl》