加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

用Perl统计文件夹中所有普通文件数量

发布时间:2020-12-15 20:59:16 所属栏目:大数据 来源:网络整理
导读:由于项目需要,自己动手写了一个用Perl统计指定文件目录中普通文件个数的小程序。这个小程序没有依赖任何第三方模块,完全是用最基本的Perl代码实现的。使用时只需要指定一个目标目录即可。 在编码过程中,有两个地方(第4行和第14行附近)本来打算用rindex

由于项目需要,自己动手写了一个用Perl统计指定文件目录中普通文件个数的小程序。这个小程序没有依赖任何第三方模块,完全是用最基本的Perl代码实现的。使用时只需要指定一个目标目录即可。

在编码过程中,有两个地方(第4行和第14行附近)本来打算用rindex,但是发现在不用的平台下,rindex的表现不太一样,考虑到移植性,就写了个稍微繁琐一点的控制逻辑。

如果有什么错误或可以改进的地方,请留言。

 
 
  1. use?strict;?
  2. use?warnings;?
  3. my?$dir?=?$ARGV[0];?
  4. my?$last_char?=?substr($dir,(length?$dir)-1);?
  5. if($last_char?ne?"/"){?
  6. ????$dir?=?$dir."/";?
  7. }?
  8. my?$fileNumber?=?0;?
  9. &cycle($dir);?
  10. print?"File?Number:t$fileNumbern";?
  11. ?
  12. sub?cycle{?
  13. ????my?$subDir?=?$_[0];?
  14. ????my?$last?=?substr($subDir,(length?$subDir)-1);?
  15. ????if($last?ne?"/"){?
  16. ????????$subDir?=?$subDir."/";?
  17. ????}?
  18. ????my?@list?=?glob?$subDir."*";?
  19. ????foreach(@list){?
  20. ????????if(-f?$_){?
  21. ????????????$fileNumber++;?
  22. ????????}?elsif(-d?$_){?
  23. ????????????&cycle($_);?
  24. ????????}????
  25. ????}?
  26. }????????

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读