[英]Delete or replace first line of 3500 php files
我有一台旧服务器,所有文件的第一行上的所有代码均被恶意代码破坏。 我将用包含<?php
的简单行替换第一行
你能建议我这样做的Linux命令?
谢谢
去检查
grep '\$efidomat.*\$otunim);' *.php
在目录中删除
sed -i 's/\$efidomat.*\$otunim);//' *.php
在目录树中删除
find . -type f -exec sed -i 's/\$efidomat.*\$otunim);
参量
$efidomat
“我的”恶意代码的开始。
$otunim
“我的”恶意代码的结尾。
这是一个小的python脚本,它将通过其文件夹中的所有* .php文件工作,并在名为new_files的子文件夹中创建修改后的版本。 不要忘记在运行脚本之前创建该子文件夹!
import glob
for f in glob.glob("*.php"):
f_in=open(f,"r")
f_out=open("new_files/"+f,"w")
f_out.write("<?php\n")
for l in f_in.readlines()[1:]:
f_out.write(l)
f_out.close()
f_in.close()
我知道这不是Linux命令,但是如果您创建一个名为“ script.py”的文件并安装python,则Linux命令将为“ python script.py”。 哈哈开玩笑的,我希望它还是有帮助的;)
我写这个:
grep 'create_";global' -rl | xargs sed '1 s/^.*$/<?php/g' -i
而且我认为它可以胜任
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.