#!/usr/bin/perl use strict; use warnings; use Data::Dumper; print Dumper walk('./rdw01_testsuit'); exit; sub walk { my $here = {}; chdir shift; for (<*>) {if (-d $_) { $here->{$_} = walk($_) } else { $here->{$_} = ''};} return $here; }