sed - 匹配转义字符、反斜杠和双引号

发布于 2024-10-01 20:44:24 字数 305 浏览 3 评论 0原文

我试图找到

<a href=\"test\">

<a href="test">

sed 替换以下内容。

我知道 \" 都需要转义,所以我执行以下操作:

sed -i "s|a href=\\\"test\\\"|a href=\"test\"|g"

但这似乎不起作用。知道我在做什么错误的?

I'm trying to find replace the following

<a href=\"test\">

with

<a href="test">

using sed.

I understand that both the \ and the " need to be escaped, so I do the following:

sed -i "s|a href=\\\"test\\\"|a href=\"test\"|g"

but this doesn't seem to work. Any idea what I'm doing wrong?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

盛装女皇 2024-10-08 20:44:24

只需使用单引号而不是双引号。

$ echo '<a href=\"test\">' | sed "s|a href=\\\"test\\\"|a href=\"test\"|g"
<a href=\"test\">

$ echo '<a href=\"test\">' | sed 's|a href=\\\"test\\\"|a href=\"test\"|g'
<a href="test">

Ori,如果您不能使用单引号,只需添加更多转义符:-)

$ echo '<a href=\"test\">' | sed "s|a href=\\\\\"test\\\\\"|a href=\"test\"|g"
<a href="test">

Just use single quotes instead of doubles.

$ echo '<a href=\"test\">' | sed "s|a href=\\\"test\\\"|a href=\"test\"|g"
<a href=\"test\">

$ echo '<a href=\"test\">' | sed 's|a href=\\\"test\\\"|a href=\"test\"|g'
<a href="test">

Ori, if you can't use single quotes, just add even more escapes :-)

$ echo '<a href=\"test\">' | sed "s|a href=\\\\\"test\\\\\"|a href=\"test\"|g"
<a href="test">
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文