sed 用变量替换

sed 用变量替换

我正在尝试用其他字符串替换匹配的字符串。这就是我所拥有的

ZKHOSTS="host1,host2,host3"
old_string="tsd.storage.hbase.zk_quorum*"
new_string="tsd.storage.hbase.zk_quorum = $ZKHOSTS"

sed -i '/$old_string/c\$new_string' /etc/opentsdb/opentsdb.conf

这是不工作的例外。

我什至尝试跟随

sed -i 's/$old_string/$new_string/g' /etc/opentsdb/opentsdb.conf

sed -i '/${old_string}/${new_string}/g' /etc/opentsdb/opentsdb.conf

我不知道我在这里做错了什么。

答案1

您必须使用双引号,例如:

sed -i "s/$old_string/$new_string/g" /etc/opentsdb/opentsdb.conf

相关内容