bash заменить имя переменной в строке значением переменной - PullRequest
0 голосов
/ 29 апреля 2020

Это довольно странно. У меня есть следующая строка:

У меня есть переменная REDIRECT, установленная в: https://working.${MYDOMAIN}/blah/blah.

Мне нужно заменить $ {MYDOMAIN} фактическим значением переменной, назначенной для $ {MYDOMAIN}. Не уверен, что для этого лучше всего подойдет bash или sed. Я попытался bash заменить, но не смог заставить его работать, вероятно, из-за побега персонажей или чего-то еще. Любая помощь приветствуется!

Ответы [ 2 ]

3 голосов
/ 29 апреля 2020

Вы можете использовать эту замену bash:

echo "${REDIRECT/\${MYDOMAIN\}/$MYDOMAIN}"

или, если у вас есть утилита envsubst, использовать:

export MYDOMAIN
envsubst <<< "$REDIRECT"
0 голосов
/ 29 апреля 2020

Просто выполнить в bash:

eval REDIRECT=$REDIRECT
...