use strict; for my $lun ( ('SAN_VC0_42','SAN_VC0_43') ) { $luns_to_hdisk {$lun} = { grep /hdisk\d+/, qx(vxdisk list $lun) } ; } print Dumper(\%luns_to_hdisk); $VAR1 = { 'SAN_VC0_43' => { 'hdisk855 state=enabled ' => 'hdisk920 state=enabled ', 'hdisk587 state=enabled ' => 'hdisk652 state=enabled ', 'hdisk51 state=enabled ' => 'hdisk116 state=enabled ', 'hdisk319 state=enabled ' => 'hdisk384 state=enabled ' }, 'SAN_VC0_42' => { 'hdisk571 state=enabled ' => 'hdisk636 state=enabled ', 'hdisk35 state=enabled ' => 'hdisk100 state=enabled ', 'hdisk303 state=enabled ' => 'hdisk368 state=enabled ', 'hdisk839 state=enabled ' => 'hdisk904 state=enabled ' } };