Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Re: reading through dated directories

by 1nickt (Abbot)
on Jun 17, 2021 at 18:46 UTC ( #11133968=note: print w/replies, xml ) Need Help??

in reply to reading through dated directories

I suggest using Path::Tiny for working with the files: its visit method can recursively walk a directory tree and apply a subroutine to each filename found, accumulating a list of matching files. The solution to matching the filenames will depend on the naming format used.

Update: since you showed the format elsewhere ... try something like this:

use strict; use warnings; use feature 'say'; use Data::Dumper; use Path::Tiny; use Time::Piece; my $root = "/Users/1nickt/perlmonks/11133966"; my $today = localtime->strftime('%Y%m%d'); my %list; path($root)->visit(sub { my $path = shift; next unless -d $path; my $date = substr($path, -8); if ( $date =~ /^[0-9]{4}[0-2][0-9][0-3][0-9]$/ && $date gt $today +) { push(@{ $list{$_->parent} }, $path =~ s{.+/}{}r); } }, { recurse => 1, }); say Dumper \%list;

Hope this helps!

The way forward always starts with a minimal test.

Replies are listed 'Best First'.
Re^2: reading through dated directories
by Anonymous Monk on Jun 17, 2021 at 18:51 UTC
    Thank you very much for your suggestion!! I will try this out!

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11133968]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (3)
As of 2021-10-23 20:17 GMT
Find Nodes?
    Voting Booth?
    My first memorable Perl project was:

    Results (88 votes). Check out past polls.