Linux 如何在sed中转义双引号?
当我正在搜索的字符串包含双引号作为字符串的一部分时,尝试找出如何使用sed命令替换值 我有一个名为ABC.conf的配置文件,它列出了发布版本,如下所示;“释放顺序”:1555 我想使用sed将发行号更改为2053 我尝试了以下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 -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/