更改与sed一致的最后一个字符

时间:2018-08-06 21:56:17

标签: sed

我的.conf文件中包含以下行

application.release = "4"

我正在尝试使用sed将其更改为application.release = "4.$any_value"

当前模式:

sed -c -i "s/\(application.release *= *\).*/\1\"$any_value\"/"

能帮助我吗?

2 个答案:

答案 0 :(得分:1)

这可能对您有用(GNU sed):

sed -i '/^application.release = "4"$/s/"$/.$any_value"/' file

如果一行包含application.release = "4",则将最后一个字符替换为.$any_value"

答案 1 :(得分:0)

尝试再添加一个反斜杠:

sed -c -i "s/\(application.release *= *\).*/\1\"\$app_version\"/"