Perl не делает именно то, что вы хотите в этом случае. Вам нужно явно указать Perl, как распечатать ваш массив.
Попробуйте это:
use Data::Dumper;
print Dumper( $array[0] );
Или это:
foreach my $element ( @{ $array[0] } ) {
print $element, "\n";
}
Или это:
print join ' ', @{ $array[0] };
print "\n";
Вот ваш пример кода, немного переписанный для дополнительной проверки ошибок и включения строгих и предупреждений . Когда они включены, Perl сделает больше проверки и ограничит вас более безопасным подмножеством языка.
#!/usr/bin/perl
use strict;
use warnings;
my @arrays;
my $fn = 'summary.txt';
open FILE, "<$fn" or die "Error opening file ($!)";
while( my $line = <FILE> ) {
chomp $line;
my @data = split ' ', $line;
push @arrays, \@data;
}
close FILE or die $!;
# print out comma-separated arrays, one per line
foreach my $array (@arrays) {
print join ",", @$array;
print "\n";
}