#!/usr/bin/perl -w my %href; # my $fn = <>; open(FH, ") { chomp; push @{$href{$1}}, $2 if $_ =~ /(\S+)\s+(\S+)/; } while (my ($key, $value) = each(%href)) { print "$key, (@{$value})\n"; } close FH; open(FD,"'; while ( ) { chomp; next unless ( s{ \A (\S+) \s+ (?= \d ) }{}xms and exists( ${$href{$1}} )); my $name = $1; my @numbers = split /\D+/; my $one_number = $numbers[${$href{$name}} - 1]; if ( $one_number >= 20 ) { print "$name\t\t${$href{$name}}\t$one_number\n"; } } close FD;