# Sortation of many lists according the second field

I must sort many lists like
@l1 = (\$a1,\$b1,\$c1,\$d1);
@l2 = (\$a2,\$b2,\$c2,\$d2); ... @ln=(\$an,\$bn,\$cn,\$dn);

The sortation of the lists  is done according of the second field of the lists. The order of the list should be
upstairs, example:
\$b2 < \$b1  =>  @l2 < @l1

###### Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Commented:
sort { \$a->[1]<=>\$b->[1] }
0
Commented:
Before using Ozo's solution, create an array whose elements are the references to your arrays @l1, @l2, ..., @ln.

# replace the ... with the actual array references below
@array_list = (\@l1, \@l2, ..., \@ln);

# sort the array list
@sorted_list = sort { \$a->[1] <=> \$b->[1] } @array_list;

# if the aray elements are strings, use 'cmp' instead of <=>
@sorted_list = sort { \$a->[1] cmp \$b->[1] } @array_list;
0

Experts Exchange Solution brought to you by