while ( ) { chomp; my %record; @record{qw(ID COMP TYPE DOC REF)} = split; pushd @data2, \%record; } #### @ids = map { $_->{'ID'} } @data2;