perl -e "$str = 'a b c d e f g';@arr=(1,2,3,4,5); ($key, @arr, $val) = split(/\s+/, $str); print qq($key $val\n@arr\n)" a b c d e f g # even if the array is presized: perl -e "$str = 'a b c d e f g';$#arr=4; ($key, @arr, $val) = split(/\s+/, $str); print qq($key $val\n@arr\n)" a b c d e f g