#!/usr/bin/perl my @ary = map {["${_}1", "${_}2", "${_}3"]} 'a'..'u'; $\ = "\n"; $" = $, = ","; split ($,), print map {$ary[$_[$_]][$_]} 0..$#_ for glob join $,, map {"{@{[0..20]}}"} 1..3;