in reply to Building scalar from File::Find

my $out = join('.', ( split('/', $name) )[4..7]);

Should be something like

my @dirs=split '/', $name ; my $out = join '.', @dirs[4..(@dirs<8 ? $#dirs : 7)];

Also, your style probably encourages bad habits. You are quoting variables unnecessarily, and you are using indirect notation, both of which are not the best ideas.

Good luck.


---
demerphq

    First they ignore you, then they laugh at you, then they fight you, then you win.
    -- Gandhi