Como você já deve ter aprendido da sua pesquisa, o bash não suporta matrizes multidimensionais per se , mas suporta matrizes "associativas". Estes são basicamente indexados por uma string, ao invés de um número, então você pode ter, por exemplo,
grade[John]=100
grade[Paul]=100
grade[George]=90
grade[Ringo]=80
Como demonstrado (mas não explicado muito bem) na resposta aceita da questão que você vinculou, os índices de matrizes associativas podem conter vírgulas, e assim um truque comum é concatenar seus índices individuais (0-1 × 0-3) em uma string, separados por vírgulas. Embora isso seja mais complicado do que os arrays comuns, pode ser eficaz:
$ declare -A a <-- Create the associative array. $ a[0,0]=1 $ a[0,1]=2 $ a[0,2]=3 $ a[0,3]=4 $ a[1,0]=5 $ a[1,1]=6 $ a[1,2]=7 $ a[1,3]=8 $ for i in 0 1 > do > echo ${a[$i,2]} > done 3 <-- And here’s your output. 7