in reply to stripping an array

Here's a simplistic solution, that avoids the kind of munging you are now doing with key names:
my @arr1 = (1 3 4); # remember arrays are zero based my @arr2 = qw( nfs afp cifs dns backup); my @arr3 = @arr2[@arr1]; # slice notation
However, here are far more elegant ways to do what you are probably after with nested data structures, and my perlmonks intuition tells me you'll see a bunch of good examples in the posts to follow.