my $list = join ',', 'a' .. 'z'; mkdir '1'; open my $FH, '>', $_ for glob '1/' . ("{$list}" x 3); #### use File::Path qw{ remove_tree }; print remove_tree('1'); print "FINISHED\n"; #### use Data::Dumper; use File::Path qw{ remove_tree }; my $err; remove_tree('1', { error => \$err }); print Dumper($err); #### $VAR1 = [ { '1' => 'cannot remove directory: Directory not empty' } ];