open INPUT, "$ENV{HOME}/flat_file" or die $!; my %ports; while (my $line = ) { chomp $line; my ($code, $city) = split /\|/, $line; $ports{$code} = $city if not $ports{$code}; } for my $key (keys %ports) { if ($ARGV[1] =~ /$key/) { print $ports{$key}, "\n"; } } close INPUT;