#!/usr/bin/perl use strict; use warnings; use 5.010; my @tracks = map {open my $track, ">", $_ or die "Can't open $_: $!"; $track} 'track1.txt', 'track2.txt', 'track3.txt'; for my $track (@tracks){ print <$track>; } #### #!/usr/bin/perl use strict; use warnings; use 5.010; my @tracks = (['track1.txt', 1000], ['track2.txt', 5000], ['track3.txt', 20000]); for my $track (@tracks) { open my $trackFile, ">", $track->[0] or die "Can't open $track->[0]: $!"; $track = [$trackFile, $track->[1]]; } for my $track (@tracks) { my ($trackFile, $lines) = @$track; print <$trackFile>; }