我有一个应该编辑xml文件的bash脚本。它看起来像这样:
echo '<?xml version="1.0" standalone="yes"?> <url>https://${site_url}</url> ... ' > /var/www/$site_url/system_config/config.xml
正如您所看到的,我在这个脚本中有一个变量${site_url}
。问题是,脚本在xml文件中写入变量的名称,而不是值,它看起来像这样的<url>https://${site_url}</url>
,应该看起来像这样:<url>https://example.com</url>
。怎么了?这个脚本的其余部分使用这个变量效果很好,只有echo
不能正常工作
变量不会在单引号字符串中展开。详细信息可在以下答案中找到:https://stackoverflow.com/a/13802438/6235550
你可以试试这个:
echo '<?xml version="1.0" standalone="yes"?> <url>https://'$site_url'</url> ... ' > /var/www/$site_url/system_config/config.xml