perl -MData::Dumper -F"\s*\|\s*|\s" -lane "next if $.==1;$r{$F[0]}={@F[1..$#F]};END{print Dumper \%r}" i nputtable.txt $VAR1 = { 'IBM' => { 'February' => '1', 'July' => '4', 'March' => '5' }, 'Oracle' => { 'March' => '4', 'May' => '5', 'January' => '3', 'April' => '6' }, 'RedHat' => { 'June' => '3', 'March' => '2', 'August' => '1' } };