$ perl -Mstrict -Mwarnings -E ' use autodie qw{:all}; my $ext = ".txt"; my @nums = 1 .. 3; my %result; for (@nums) { open my $fh, "<", $_ . $ext; while (<$fh>) { chomp; y/,//d; next unless length; $result{+length} .= $_; } close $fh; } my @sorted_keys = sort { $a <=> $b } keys %result; say "*** Input Data Strings ***"; say "Shortest: ", $sorted_keys[0]; say "Longest: ", $sorted_keys[-1]; say "*** Output Data Strings ***"; say $result{$_} for @sorted_keys; say "*** Two Shortest ***"; say $result{$_} for @sorted_keys[0, 1]; say "*** Two Longest ***"; say $result{$_} for @sorted_keys[-2, -1]; ' *** Input Data Strings *** Shortest: 1 Longest: 5 *** Output Data Strings *** ATG AATTGG AAATTTGGG AAAATTTTGGGG AAAAATTTTTGGGGG *** Two Shortest *** ATG AATTGG *** Two Longest *** AAAATTTTGGGG AAAAATTTTTGGGGG