in reply to Directory traversal problem

It probably won't ease the pain at first, but File::Find is designed for recursing through directory trees.

You can get a hashed stat with File::stat, whose stat returns a reference to a hash like you produce.

Also notable when dealing with filenames and directory trees are File::Basename and File::Spec.

After Compline,
Zaxo