... while ( my $row = $csv->getline( $fh ) ) { ... #### my %server_info; while ( my $row = $csv->getline( $abc ) ) { my @columns = $csv->fields(); my $server_id = $columns[0]; $server_info{ $server_id } = \@columns; } my $query = $ARGV[0]; print "Searching for server id '$query':"; use Data::Dumper; my $info = $server_info{ $query } || 'No results found'; print Dumper $info;