引用和sed的问题

时间:2011-09-21 15:51:35

标签: sed cygwin quotes

我正在尝试使用sed查找并替换一些文本。具体来说,我试图在一个可能包含空格的变量周围添加引号。

sed -i 's/$VAR some.file/"$VAR" some.file/g' path/to/file

不幸的是,结果不是预期的。我也试图反驳报价,没有运气。我在这里缺少什么?

sed命令在Windows / cygwin下执行。

1 个答案:

答案 0 :(得分:2)

您错过了单引号阻止变量替换的事实:

sed -i "s/$VAR some.file/\"$VAR\" some.file/g" path/to/file

甚至

sed -i $(printf 's/%s some.file/"%s" some.file/g' "$VAR" "$VAR") path/to/file