Я пытаюсь заменить совпадающую строку на другую строку. Вот что у меня есть
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