use strict; use warnings; my %hash = ( one => [1,2,4], two => [5,7,9], ); my @new1 = (10,11,12); my $new2 = [13,14,15]; push(@{$hash{one}}, @new1); push(@{$hash{one}}, @$new2); push(@{$hash{one}}, 16, 17, 18); print join(',', @{$hash{one}});