当前位置:  开发笔记 > 编程语言 > 正文

如何使用Perl获取目录中的纯文件列表?

如何解决《如何使用Perl获取目录中的纯文件列表?》经验,为你挑选了2个好方法。

我正在寻找一种在Perl中列出目录的普通文件的方法.仅文件,没有目录.



1> el.pescado..:

您需要使用opendir,readdirclosedir-f文件测试运算符一起使用:

opendir(my $dh, $some_dir) || die $!;
while(my $f = readdir $dh) {
    next unless (-f "$some_dir/$f");
    print "$some_dir/$f\n";
}
closedir $dh;


如果您不想对整个树进行深度优先搜索,则File :: Find不是您正在寻找的机器人.

2> toolic..:

列出目录中所有文件的另一种方法是使用read_dirCPAN模块File :: Slurp中的函数:

use strict;
use warnings;
use File::Slurp qw(read_dir);

my $dir = './';
my @files = grep { -f } read_dir($dir);

它会为您执行opendir检查.请记住,它包含任何"隐藏"文件(以点开头的文件).这不会递归列出指定目录的子目录中的文件.

推荐阅读
mobiledu2402852413
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有