in reply to Everybody loves not using File::Find
use File::Find; use Data::Dumper; my $files = {}; find(sub {wanted($files);}, "c:/perl58"); print Dumper($files); sub wanted { if (($_ ne ".") && ($_ ne "..")) { insert(shift); } } sub insert { my @elements = split("/", $File::Find::name); my $parent = shift; my $index; foreach ($index = 0; $index <= $#elements; $index ++) { if (($index == $#elements) && (-f $_)) { $parent->{$elements[$index]} = $File::Find::name; } else { if (!defined($parent->{$elements[$index]})) { $parent->{$elements[$index]} = {}; } $parent = $parent->{$elements[$index]}; } } }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: Everybody loves not using File::Find
by submersible_toaster (Chaplain) on Nov 27, 2002 at 05:44 UTC |