{ open my $in, 'foo.tsv' or die "$!\n"; my @records; while ( <$in> ) { next unless /^42\t/; chomp; push @records, join( "\t", ( split "\t" )[ 1, 3, 8 ] ) . $/; } open my $out, '>', 'foo_view.tsv' or die "$!\n"; print $out $_ for sort @records; }