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

Связанный контент