我有一個sed命令工作正常,除非在文件的某處出現換行符。這是我的命令:SED取代'可能'換行
sed -i 's,<a href="\(.*\)">\(.*\)</a>,\2 - \1,g'
現在,它完美的作品,但我只是碰到這種文件具有a
標籤,像這樣跑:
<a href="link">Click
here now</a>
當然它並沒有找到這一個。所以我需要修改它以允許在搜索中換行。但我不知道如何讓它可以做到這一點,除非我首先查看整個文件,並且事先刪除所有的\n
。問題是我放棄了文件中的所有格式。
我不斷收到以下錯誤:'sh:1:Syntax error:Unterminated quoted string' – jfreak53 2013-04-05 22:53:35
這是來自您的shell。確保你在正確的地方包含單引號。 (我把最後一個例子複製並粘貼到我的shell中,它工作正常。)順便說一句,如果你的sed版本不喜歡\ s(空格)轉義,你可以使用一個文字空間,或者[[:space: ]]在其位置。 – William 2013-04-05 23:01:09
GOT IT!我想我應該提到我在我的mailcap文件中使用Mutt中的這個命令,因此我必須轉義每個''':) woops。儘管現在工作。 – jfreak53 2013-04-05 23:17:38