mkdir $DIR{$_} for sort { length $DIR{$a} <=> length $DIR{$b} } keys %DIR; #### mkdir $_ for sort { length $a <=> length $b } values %DIR; #### mkdir $_->[0] for sort { $a->[1] <=> $b->[1] } map [ $_, length $_ ], values %DIR; #### mkdir $_ for sort { $a =~ tr[/][] <=> $b =~ tr[/][] } values %DIR; #### mkdir $_->[0] for sort { $a->[1] <=> $b->[1] } map [ $_, tr[/][] ], values %DIR;