Perl实现遍历目录例子

 更新时间:2014年12月20日 11:55:38   投稿:junjie  
这篇文章主要介绍了Perl实现遍历目录例子,本文示例运行在Windows系统下,而且需要gbk编码,需要的朋友可以参考下

环境为windos,需要注意的两点:

1、默认activePerl下的采用的编码是gbk,所以需要将字符串转为gbk才不会显示乱码
2、遍历文件目录时,需要排除特殊的目录.和..

完整的代码:

复制代码 代码如下:

#!/usr/bin/perl
 use strict;
 use warnings;
 use Encode qw/from_to/;
 
 my $path = "e:/CSS Design";
 my $filecount = 0;
 
 sub parse_env {   
     my $path = $_[0]; #或者使用 my($path) = @_; @_类似javascript中的arguments
     my $subpath;
     my $handle;
 
     if (-d $path) {#当前路径是否为一个目录
         if (opendir($handle, $path)) {
             while ($subpath = readdir($handle)) {
                 if (!($subpath =~ m/^\.$/) and !($subpath =~ m/^(\.\.)$/)) {
                     my $p = $path."/$subpath";
 
                     if (-d $p) {
                         parse_env($p);
                     } else {
                         ++$filecount;
                         print $p."\n";
                     }
                 }               
             }
             closedir($handle);           
         }
     }
 
     return $filecount;
 }
 
 my $count = parse_env $path;
 my $str = "文件总数:".$count;
 from_to($str, "utf8", "gbk");
 
 print $str;

运行效果图:

相关文章

  • Windows10下安装配置 perl 环境的详细教程

    Windows10下安装配置 perl 环境的详细教程

    Perl 最重要的特性是Perl内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。这篇文章主要介绍了Windows10下安装配置 perl 环境的详细教程,需要的朋友可以参考下
    2020-12-12
  • Perl中常见符号与操作

    Perl中常见符号与操作

    这篇文章主要介绍了Perl中常见符号与操作,需要的朋友可以参考下
    2017-10-10
  • perl 读取所需文件的路径,然后打开相应的文件

    perl 读取所需文件的路径,然后打开相应的文件

    perl,读取所需文件的路径,然后打开相应的文件,并对文件中的DNA序列进行计数,substr函数对长字符串的片段化处理功能
    2013-03-03
  • perl跳过首行读取文件的实现代码

    perl跳过首行读取文件的实现代码

    要求直接跳过第一行,然后读取后面的内容,以下代码来自网络,感谢原作者的辛苦劳动,顺祝新年快乐
    2013-02-02
  • Perl脚本实现递归遍历目录下的文件

    Perl脚本实现递归遍历目录下的文件

    这篇文章主要介绍了Perl脚本实现递归遍历目录下的文件,本文直接给出实现代码,代码中包含明细注释,需要的朋友可以参考下
    2015-04-04
  • perl中使用ip138网站查询ip归属地脚本分享

    perl中使用ip138网站查询ip归属地脚本分享

    这篇文章主要介绍了perl中使用ip138网站查询ip归属地脚本分享,本文包含了处理HTML的部分,只保留IP归属地信息,需要的朋友可以参考下
    2014-09-09
  • Perl实现遍历目录例子

    Perl实现遍历目录例子

    这篇文章主要介绍了Perl实现遍历目录例子,本文示例运行在Windows系统下,而且需要gbk编码,需要的朋友可以参考下
    2014-12-12
  • Perl的经典用法分享

    Perl的经典用法分享

    Perl的经典用法分享,学习perl的朋友可以参考下
    2013-02-02
  • Perl学习笔记之CPAN使用介绍

    Perl学习笔记之CPAN使用介绍

    这篇文章主要介绍了Perl学习笔记之CPAN使用介绍,本文讲解了什么是CPAN、CPAN的目录作用介绍、CPAN安装Perl Module的两种方法等内容,需要的朋友可以参考下
    2015-06-06
  • Perl6中的垃圾收集

    Perl6中的垃圾收集

    今天小编就为大家分享一篇关于perl6垃圾收集的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10

最新评论