Альтернативой использованию Data :: Dumper является использование Data :: Printer:
use Data::Printer;
p $value;
. Вы также можете использовать это для настройки формата вывода.Например, вы можете поместить все это в одну строку без индексов (дополнительные параметры см. В документации ):
use Data::Printer {
index => 0,
multiline => 0,
};
p $value;
Кроме того, в качестве предложения для получения уникальных файлов поместите элементыв хэш:
my %unique;
@unique{ @files } = @files;
my @unique_files = sort keys %unique;
На самом деле, вы можете даже пропустить этот шаг и поместить все в% hash_table за один проход:
my %hash_table;
foreach my $source_parts (@file_list) {
chomp($source_parts);
my @parts = split(/:/, $source_parts);
unshift @{ $hash_table{$parts[0]} }, $parts[1];
}