【发布时间】:2019-11-16 16:53:12
【问题描述】:
我需要用我的环境中存在的变量替换一个字符串。
例如,我现在的环境中有以下变量:
export APP_NAME=teste
export DB_DATABASE=dbname
export DB_USER=username
然后,我需要用这些变量中的值替换一个字符串,例如:
echo "APP_NAME=APP_NAME; DB_DATABASE=DB_DATABASE; DB_USER=DB_USER;" | sed -E "s/\b(\w+)\b=(\1)/\1=`echo \\${\\2}`/g"
那么我期待的最终结果:
APP_NAME=teste; DB_DATABASE=dbname; DB_USER=username;
但我得到的一切都是:
APP_NAME=${APP_NAME}
DB_DATABASE=${DB_DATABASE}
DB_USER=${DB_USER}
【问题讨论】:
标签: regex linux bash sed environment-variables