对于查找和替换,以下字符串的正确转义是什么?

时间:2013-02-25 05:45:38

标签: linux sed

我正在尝试使用以下说明

http://www.brunolinux.com/02-The_Terminal/Find_and%20Replace_with_Sed.html

替换所有出现的

<BASE href="file://C:\Users\J\Documents\Personal\J\">
什么也没有。我试过了

find . -type f -exec sed -i 's/<BASE href=\"file:\/\/C:\\Users\\J\\Documents\\Personal\\J\\">//g' {} \;

但它没有用,因为逃避角色有问题。我做错了什么?

2 个答案:

答案 0 :(得分:3)

更改替换分隔符有很大帮助:

 find . -type f -exec sed -i \
     's!<BASE href="file://C:\\Users\\J\\Documents\\Personal\\J\\">!!g' {} \;

答案 1 :(得分:0)

试试这个:

s/\<BASE href\="file:\/\/C:\\Users\\J\\Documents\\Personal\\J\\\"\>//g

或使用相同的命令尝试使用perl,即 而不是sed -i使用perl -pi