在bash上替换sed的问题

时间:2013-10-09 15:19:05

标签: javascript bash sed

我遇到了问题..我的服务器被恶意脚本攻击了..它在我服务器上的所有网站上添加了以下代码。

<script type='text/javascript' src='http://siu.edu.bd/includes/framework.js'></script>

首先,我想从我服务器上的所有php文件中删除它。 我想使用以下sed命令,但有些我如何得到一个返回错误,上面写着:

"Syntax error near unexpected token '<'"

这是我试过的代码

find /home -type f | xargs sed -i 's$<script type=\'text/javascript\' src=\'http://siu.edu.bd/includes/framework.js\'></script>$ $g'

我不明白为什么它不起作用..

提前致谢,

安塞尔姆

1 个答案:

答案 0 :(得分:3)

在sed中引用错误的问题,请使用:

sed "s~<script type='text/javascript' src='http://siu.edu.bd/includes/framework.js'></script>~ ~g" 

您的命令中的问题是,在shell中,您可以使用\'来转义单引号,这就是为什么在sed中使用带有不同正则结构分隔符~的双引号更好的原因,如上所示。