perl 得到指定目录中的指定内容
两种方法,第一种方法是可以使用 chdir + glob,但是这种方法对于 . 和 .. 文件要 分开处理, 另外一种方法是使用目录句柄DH: opendir,readdir,closedir,这种方法可以获取所有的文件,包括. 和..文件。。。。。 1) #!perl use strict; use warnings; sub change_dir { ?? ?my ($chdir,@filenames) = @_; ?? ?chdir $chdir or die "can't change dir: $!"; ?? ?@filenames = glob "*"; ?? ?foreach my $filename (@filenames) ?? ?{ ?? ??? ?print "the dir has $filename n"; ?? ?} } ?? ? sub list_files { ??????? #本程序适用于Windows } &list_files(); 2)第二种方法如下: #!perl ?? closedir DH; 如果第二种方法中不想显示 . 和 .. 文件则在foreach语句中加入这么一句话:??? next if ($file eq "." or $file eq ".."); 就ok 啦。 如果只想显示文件 可以加上一句:next unless -f "$dir$file" ; 你觉得哪种方法好呢?(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |