#linux #shell #sh
#linux #оболочка #sh
Вопрос:
У меня есть несколько переменных env, таких как
variable_a=xxx
variable_b=yyy
variable_c=zzz
Я хочу установить все это в другую переменную. Как я могу сделать это с помощью одной команды со ссылкой на префиксную переменную_
Я знаю, мы можем сделать это примерно так new_var=${variable_a} ${variable_b} ${variable_c}
.
Но мне нужно знать, можем ли мы сделать это с помощью ссылки на префикс.
Комментарии:
1.
with prefix referencing
Что это за «ссылка на префикс»? В руководстве по bash такого понятия нет в bash
Ответ №1:
Вы можете использовать специальное ${!var*}
расширение в bash, чтобы получить список заданных имен переменных. Затем вы можете выполнить итерацию по ним и использовать косвенное расширение для получения значения. А затем соедините значения пробелами.
new_var=$(
for i in ${!variable_*}; do
printf "%sn" "${!i}"
done | paste -sd ' '
)