NAME
File::Recurse.pm - Module for Recursing directories
DESCRIPTION
This module is used to recurse directory structures and saving the data into a hash of array references. You can give it certain rules (e.g. '.gif' will match only *.gif files) and you can make it check for a '.ignore_index' file in that directory to make it ignore.
SYNOPSIS
o %hash = Recurse(\@dirs, \%rules)
Go through the @dirs and apply any rules from %rules. It will return
a %hash where the keys are directories, and the values are the files
in that directory in an array.
e.g. $hash{'/usr/local/bin'} = [ 'ls', 'irc', ... ];
RULES
In the rules hash you can have
match => regex file pattern, [e.g. match => '\.gif']
nomatch => regex file pattern, [e.g. nomatch => 's\.txt']
ignore => 1|0 [e.g. ignore => 1]
note: if you send '.gif' that will look for any token next to gif and
'\.gif' is probably what you are looking for
EXAMPLE
Here is an example program that would output all the files in directories starting from /tmp that have a period somewhere in the name, and isn't a .gif file
use File::Recurse;
my %files = Recurse(['/tmp'], {match => '\.', nomatch => '\.html$'});
foreach (sort keys %files) { print "Dir: $_\n"; foreach (@{ $files{$_} }) { print " File: $_\n"; } }
AUTHOR
Dion Almaer (dion@member.com)