1
我試圖找到替換以下sed的 - 匹配逃逸字符,反斜線+雙引號
<a href=\"test\">
<a href="test">
使用SED用。
我明白,無論是\
和"
需要進行轉義,所以我做到以下幾點:
sed -i "s|a href=\\\"test\\\"|a href=\"test\"|g"
但這似乎並沒有工作。任何想法我做錯了什麼?
我試圖找到替換以下sed的 - 匹配逃逸字符,反斜線+雙引號
<a href=\"test\">
<a href="test">
使用SED用。
我明白,無論是\
和"
需要進行轉義,所以我做到以下幾點:
sed -i "s|a href=\\\"test\\\"|a href=\"test\"|g"
但這似乎並沒有工作。任何想法我做錯了什麼?
只需使用單引號而不是雙打。
$ 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">
大利,如果你不能使用單引號,只需添加甚至更逃逸:-)
$ echo '<a href=\"test\">' | sed "s|a href=\\\\\"test\\\\\"|a href=\"test\"|g" <a href="test">
我已經接受了這個答案,因爲它的作品,即使我不能用它作爲我正在使用的真正的字符串還包括單引號! – EoghanM 2010-11-09 12:26:20
@EoghanM,我發佈了另一個非單引號解決方案 - 這只是添加更多轉義的問題,因爲shell本身會吸引一個級別。 – paxdiablo 2010-11-09 12:31:35
謝謝,做到了! 5個反斜槓!我其實嘗試了4,但認爲我變得荒謬! – EoghanM 2010-11-09 12:40:51