【发布时间】:2017-02-20 13:01:45
【问题描述】:
我正在尝试使用 sed 读取文件并更改文件中的变量,但 sed 不读取变量的值。
这里我想用market 替换@@ 并将输出放在另一个文件中
markets=au,uk,ca
IFS="," read -ra items <<<"$markets"
for item in "${items[@]}"
do
echo "country is :: $item"
sed -i 's/@@/${!item}/g' sample_guid >> /test/eric/Guid_del
done
【问题讨论】:
-
你一直使用的
@@是什么? -
查看输入示例之前/之后会很有用...使用
-i意味着不会有任何标准输出...对于变量替换,需要use double quotes -
当您有一个带有
@@的模板文件sample_guid 将被不同运行的市场替换时,请尝试删除sed 的-i选项。