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;

运行效果图:

相关文章

  • 一行代码解决 perl输入 排序 输出问题

    一行代码解决 perl输入 排序 输出问题

    一行代码解决 perl输入 排序 输出问题,需要的朋友可以参考下
    2013-02-02
  • Perl集群配置管理系统Rex简明手册

    Perl集群配置管理系统Rex简明手册

    这篇文章主要介绍了Perl集群配置管理系统Rex简明手册,自动化运维的一个管理工具,需要的朋友可以参考下
    2014-06-06
  • perl 文件操作总结

    perl 文件操作总结

    perl 文件操作总结,需要的朋友可以参考下
    2013-02-02
  • 用Perl操作Excel文档的实例代码

    用Perl操作Excel文档的实例代码

    用Perl操作Excel文档的例子,有需要的朋友可以参考下
    2013-02-02
  • Perl中的列表和数组学习笔记

    Perl中的列表和数组学习笔记

    这篇文章主要介绍了Perl中的列表和数组学习笔记,本文讲解了列表、数组--列表的存贮、数组的存取、字符串中的方括号和变量替换、列表范围、数组的输出等内容,需要的朋友可以参考下
    2015-02-02
  • perl 交叉编译详解

    perl 交叉编译详解

    Perl设计的初衷是为了更好地处理文本处理任务,但随着时间的发展,现在它已经变成了一种强大的一般目的编程语言,Perl是一种高级、通用、解释型、动态的编程语言,本文给大家介绍perl 交叉编译的相关知识,感谢的朋友跟随小编一起看看吧
    2024-04-04
  • perl的cgi高级编程介绍

    perl的cgi高级编程介绍

    本文为大家介绍perl的cgi高级编程方面的知识,供大家学习参考
    2013-02-02
  • Perl中处理时间的几个函数

    Perl中处理时间的几个函数

    本文为大家介绍Perl中处理时间的几个函数,供大家学习参考
    2013-02-02
  • perl用变量做句柄介绍

    perl用变量做句柄介绍

    在perl代码中,open 有一个特殊的地方,就是如果你给它一个未定义(这是为什么用hash的原因)的变量做间接文件句柄,那么 Perl 会自动为你定义那个变量,也就是自动把它激活,使它包含一个合适的文件句柄引用
    2013-02-02
  • 使用perl清理电脑上重复文件实现代码(续)

    使用perl清理电脑上重复文件实现代码(续)

    使有perl搜索电脑上的重复文件并删除,需要的朋友可以参考下
    2013-02-02

最新评论