#! /bin/bash array_1=(1 3 5) array_2=(7 9 3) array_3=(0 -1 3) for i in {1..3}; do array=array_$i echo "${array[@]}" done
Я печатаю «массив_1», «массив_2» и «массив_3» вместо его значения.
Сохраните полное имя переменной плюс [@] в виде строки, затем получите элементы с ${!var} косвенным расширением . Это забавно, но размещение [@] в строке, а не в раскрытии - это путь к go.
[@]
${!var}
#!/bin/bash array_1=(1 3 5) array_2=(7 9 3) array_3=(0 -1 3) for i in {1..3}; do array="array_$i[@]" echo "${!array}" done