Você pode especificar que uma variável é uma matriz, criando uma matriz vazia, assim:
var_name=()
var_name
será então uma matriz conforme relatada por
$ declare -p var_name
declare -a var_name='()'
Exemplo:
var_name=()
for i in {1..10}; do
var_name[$i]="Field $i of the list"
done
declare -p var_name
echo "Field 5 is: ${var_name[5]}"
que gera algo assim:
declare -a var_name='([1]="Field 1 of the list" [2]="Field 2 of the list" [3]="Field 3 of the list" [4]="Field 4 of the list" [5]="Field 5 of the list" [6]="Field 6 of the list" [7]="Field 7 of the list" [8]="Field 8 of the list" [9]="Field 9 of the list" [10]="Field 10 of the list")'
Field 5 is: Field 5 of the list