gpt4 book ai didi

Perl根据所有子目录的扩展名查找文件

转载 作者:行者123 更新时间:2023-12-01 07:27:33 26 4
gpt4 key购买 nike

我有一段代码可以在给定目录中查找所有 .txt 文件,但我无法在子目录中查找它。

我需要我的脚本做两件事

  • 扫描文件夹及其所有子目录以查找文本文件
  • 仅打印其路径的最后一段

  • 例如,我有一个目录结构
    C:\abc\def\ghi\jkl\mnop.txt

    我脚本指向路径 C:\abc\def\ .然后遍历每个子文件夹并找到 mnop.txt以及该文件夹中的任何其他文本文件。

    然后打印出 ghi\jkl\mnop.txt
    我正在使用它,但它实际上只打印出文件名以及文件当前是否在该目录中。
    opendir(Dir, $location) or die "Failure Will Robertson!";
    @reports = grep(/\.txt$/,readdir(Dir));
    foreach $reports(@reports)
    {
    my $files = "$location/$reports";
    open (res,$files) or die "could not open $files";
    print "$files\n";
    }

    最佳答案

    我相信这个解决方案更简单,更容易阅读。我希望它有帮助!

    #!/usr/bin/perl

    use File::Find::Rule;

    my @files = File::Find::Rule->file()
    ->name( '*.txt' )
    ->in( '/path/to/my/folder/' );

    for my $file (@files) {
    print "file: $file\n";
    }

    关于Perl根据所有子目录的扩展名查找文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15303270/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com