我正在尝试使用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
答案 0 :(得分:0)
当sample_guid看起来像
这是市场@@的一个例子。我想在这里填补市场。
如果你想为不同的市场做这件事,
通过额外的参数使用printf的功能:
printf "This is an example for market %s. I want the market filled in here.\n" au uk ca
当sample_guid真的只有一个@@
时,您可以将printf
解决方案扩展为
printf "$(sed 's/@@/%s/' sample_guid)\n" $(tr "," " " <<< "${markets}")