Linux 如何在sed中转义双引号?

Linux 如何在sed中转义双引号?,linux,sed,double-quotes,Linux,Sed,Double Quotes,当我正在搜索的字符串包含双引号作为字符串的一部分时,尝试找出如何使用sed命令替换值 我有一个名为ABC.conf的配置文件,它列出了发布版本,如下所示;“释放顺序”:1555 我想使用sed将发行号更改为2053 我尝试了以下sed命令 sed -i 's:"ReleaseSequence":.*:"ReleaseSequence": 2053:' ABC.conf 我得到了错误信息 sed: -e expression #1, char 24: unknown option to `s'

当我正在搜索的字符串包含双引号作为字符串的一部分时,尝试找出如何使用sed命令替换值

我有一个名为ABC.conf的配置文件,它列出了发布版本,如下所示;“释放顺序”:1555

我想使用sed将发行号更改为2053

我尝试了以下sed命令

sed -i 's:"ReleaseSequence":.*:"ReleaseSequence": 2053:' ABC.conf
我得到了错误信息

sed: -e expression #1, char 24: unknown option to `s'

我试图用[\“]、“”“”和“”来避开双引号,但sed不喜欢这些双引号。

这里的双引号不是问题所在。您使用了
作为分隔符,尽管您的数据也包含文字冒号。使用不同的分隔符

sed -i 's#"ReleaseSequence":.*#"ReleaseSequence": 2053#' ABC.conf

或反斜杠转义文字冒号。

在尝试匹配
时,不应使用
作为
s
的分隔符。只需执行
s/\(“ReaeaseSequence:\)./\12053/