目标
使用单个命令运行文件,并使用shell脚本中定义的变量替换配置文件中的占位符变量。
要求
当前尝试
deploy.sh
USERNAME="tom"
PASSWORD="secret"
sed 's/\$PLACEHOLDER_/\$/g' test.conf
test.conf
deploy="$PLACEHOLDER_USERNAME"
credentials="$PLACEHOLDER_PASSWORD"
问题
答案 0 :(得分:0)
您可以使用此awk命令:
awk -F '[="]' 'FNR==NR {a["\$PLACEHOLDER_" $1]=$3;next}
$3 in a {print $1 "=\"" a[$3] "\""}' deploy.sh test.conf
deploy="tom"
credentials="secret"