Пример 34-2. Косвенные ссылки на переменные -- новый метод

Пример 34-2. Косвенные ссылки на переменные -- новый метод

#!/bin/bash

# Косвенные ссылки на переменные.

a=letter_of_alphabet

letter_of_alphabet=z

echo "a = $a" # Прямая ссылка.

echo "Now a = ${!a}" # Косвенная ссылка.

# Форма записи ${!variable} намного удобнее старой "eval var1=$$var2"

echo

t=table_cell_3

table_cell_3=24

echo "t = ${!t}" # t = 24

table_cell_3=387

echo "Значение переменной t изменилось на ${!t}" # 387

# Теперь их можно использовать для ссылок на элементы массива,

# или для эмуляции многомерных массивов.

# Было бы здорово, если бы косвенные ссылки допускали индексацию.

exit 0