我需要从目录和子目录中的所有文件中删除(替换为空白)字符串。
但是此字符串包含特殊字符,例如&?. <> / (这是一个网址)! 我尝试使用sed和rpl都没有成功:无法逃脱字符。 要更改的字符串ex
<script src='https://test.com?type=in2&frm=scr&'></script>
尝试
rpl " <script src='https://test.com?type=in2&frm=scr&'></script>" "" index.php
我遇到一个错误; NameError:名称“ raw_input”未定义
我只需要知道如何转义rpl中sed中的这些'/?.& chars
答案 0 :(得分:0)
将查找与sed一起使用:
find /dir/* -exec sed -i 's/&//g;s/\?//g;s/\<//g;s/\>//g;s/\///g' {} +
更改行:
grep -v "<script src='https://test.com?type=in2&frm=scr&'></script>" file > newfile
答案 1 :(得分:0)
它应该删除整个脚本行。
然后将grep
与-v
一起使用。
$ cat <<'EOF' >/tmp/test.txt
a
<script src='https://test.com?type=in2&frm=scr&'></script>
b
EOF
$ grep -x -v "<script src='https://test.com?type=in2&frm=scr&'></script>" /tmp/test.txt
a
b