Geo*_*lis -1 linux replace escaping sed search-and-replace
我有一个 mysqldump 文件,我想在其中替换以下文本<a href="/tag/,<a href="http://www.mydomain.com/tag/但找不到正确转义所有特殊字符的方法。
我正在使用以下命令(+ 一些其他变体),
cat wordpress_posts.sql | sed 's%/<a href="\/\tag\/\/<a href="\http:/\/\www.mydomain.com/\tag/\/%g' > wordpress_posts_new.sql
但它不起作用。
有人可以帮忙吗?
更新 1:结果是 mysqldump 中的源字符串不是<a href="/tag/但<a href=\"/tag/(注意等号后面的额外反斜杠)
这是 SQL 文件的一行的 pastebin,其中包含我要替换的字符串:http://pastebin .com/8G5mcxpJ
我尝试了 sed 命令的所有 3 个建议版本,但没有一个会替换上面的字符串<a href=\"http://www.mydomain.com/tag/
(是的,我在等号后添加了反斜杠)
您不必转义/,您可以使用任何其他分隔符:
sed 's#<a href=\\"/tag/#<a href="http://www.mydomain.com/tag/#' wordpress_posts.sql
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14123 次 |
| 最近记录: |