my @a; ... my $na; my $Na; $na = $#a; $Na = ( 0, 1..$na ); @a = ...; for my $i (@Na)... #### for my $i (0 .. $#a) #### use strict; use warnings; my @a = qw( / /home /var /tmp /var/tmp ); my @b; $b[$_] = `ls $a[$_]` for (0 .. $#a); for my $i (0 .. $#a) { my @c = split("\n", $b[$i]); printf("%s%s%s\n\n", $a[$i], ($i ? '/' : ''), $c[$_]) for (0 .. $#c); }