Diz-se que os parâmetros posicionais não são um array.
E o caminho que existe para defini-los é via set
. Nenhum outro array precisa disso.
$ set -- one two t33 f44
$ printf '%s\n' "$@"
one
two
t33
f44
Mas pelo menos no bash (e no ksh e zsh), eles podem ser selecionados da seguinte maneira:
$ set -- one two t33 f44
$ echo "${@:2:1}"
two
$ echo "${@:2:2}"
two t33