in reply to getting picky with File::Find
#!/usr/bin/perl -- use strict; use warnings; use Data::Dump qw/ dd /; use File::Find::Rule qw/ rule find /; my $thisdir = shift ; my $nobaby = rule( directory => name => 'baby', 'prune' ); my $list = rule( file => name => 'list.dat', ); my @files = find( not => $nobaby , or => $list, in => $thisdir, ); dd( \@files ); __END__
$ tree -f -a coy coy |-- coy/abu | `-- coy/abu/list.dat |-- coy/baby | `-- coy/baby/list.dat `-- coy/dabie `-- coy/dabie/list.dat 3 directories, 3 files $ perl fffindrule.pl ["coy/abu/list.dat", "coy/dabie/list.dat"]
|
|---|