繁体   English   中英

删除或替换3500个php文件的第一行

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM