Я создаю сценарий инициализации, который заполняет переменные, откуда они централизованно определены в файле bash, в различные не-bash файлы (sql, nginx и т. Д.) Как часть ускорения виртуальной машины.
Мне нужно создать ассоциативный массив, заполненный моими локальными переменными.
Например:
#!/usr/bin/env bash
var1=abc
var2=123
var3=xyz
declare -A vars_list
#magic script would produce this:
vars_list=([var1]=$var1 [var2]=$var2 [var3]=$var3)
#print out
for i in "${!vars_list[@]}"
do
echo "key : $i"
echo "value: ${vars_list[$i]}"
done
даст:
ключ: var1
значение: abc
ключ: var3
значение: xyz
ключ: var2
значение: 123
Слишком долго пытался.Похоже, это еще одна вещь, которую Bash просто не может сделать просто.Помощь