我在使用sed时遇到了麻烦。 我需要替换包含许多文件的非常弃用的HTML站点中的一些行。 我的脚本不起作用,我不知道为什么。当我试图用Netbeas找到确切的模式时,它起作用了。
find . -type f -name "*.htm?" -exec sed -i -r 's/ing\. Šuhajda Dušan\, Mírová 767\, 518 01 Dobruška\, \+420 737 980 333\,/REPLACEMENT/g' {} \;
错误在哪里? 是否有替代文本而不搜索正则表达式而是纯文本? 谢谢你的回复。
答案 0 :(得分:0)
是的,有一个名为 replace 的简单命令行工具,语法如下:
replace "string 1" "string 2" -- *.html
答案 1 :(得分:0)
没有必要转义逗号,因为它并不特殊。
find . -type f -iname "*.htm?" -exec sed -i.bak -r 's/ing\. Šuhajda Dušan, Mírová 767, 518 01 Dobruška, \+420 737 980 333,/REPLACEMENT/g' "{}" +;