Ssh 如何在目录中查找PHP中的代码并对其进行编辑
我的服务器中有多个隐藏的被感染的PHP文件被加密(Ssh 如何在目录中查找PHP中的代码并对其进行编辑,ssh,find,Ssh,Find,我的服务器中有多个隐藏的被感染的PHP文件被加密(ClamAV看不到),我一直遇到问题 我想知道如何运行SSH命令来搜索所有受感染的文件并对其进行编辑 到目前为止,我通过文件内容找到了它们,如下所示: find /home/***/public_html/ -exec grep -l '$tnawdjmoxr' {} \; 注意:$tnawdjmoxr是一段代码 如何在目录/public\u html/中的所有PHP文件中查找和删除此代码?您可以添加xargs和sed: find /home/
ClamAV
看不到),我一直遇到问题
我想知道如何运行SSH命令来搜索所有受感染的文件并对其进行编辑
到目前为止,我通过文件内容找到了它们,如下所示:
find /home/***/public_html/ -exec grep -l '$tnawdjmoxr' {} \;
注意:$tnawdjmoxr
是一段代码
如何在目录
/public\u html/
中的所有PHP文件中查找和删除此代码?您可以添加xargs
和sed
:
find /home/***/public_html/ -exec grep -l '$tnawdjmoxr' {} \; | xargs -d '\n' -n 100 sed -i 's|\$tnawdjmoxr||g' --
- 与使用grep相比,您还可以立即使用
,但是-它可以改变该文件的修改时间,并且可能会进行一些意外的修改,例如某些行尾等sed
确保逐行读取每个参数。如果文件名上有空格,这会很有帮助-d'\n'
限制-n 100
将在一个实例中处理的文件数sed
使sed识别以破折号开头的文件名。同样值得称赞的是,grep将拥有它:--
grep-l-e'$tnawdjmoxr'-{}代码>
- 使用
可以更快地搜索文件grep-F
启用内联编辑sed-i
xargs
之外,还可以使用Bash:
find /home/***/public_html/ -exec grep -l '$tnawdjmoxr' {} \; | while IFS= read -r FILE; do sed -i 's|\$tnawdjmoxr||g' -- "$FILE"; done
while IFS= read -r FILE; do sed -i 's|\$tnawdjmoxr||g' -- "$FILE"; done < <(exec find /home/***/public_html/ -exec grep -l '$tnawdjmoxr' {} \;)
readarray -t FILES < <(exec find /home/***/public_html/ -exec grep -l '$tnawdjmoxr' {} \;)
sed -i 's|\$tnawdjmoxr||g' -- "${FILES[@]}"
find/home/***/public_html/-exec grep-l'$tnawdjmoxr'{}\|而IFS=read-r文件;执行sed-i的| \$tnawdjmoxr | | g'-“$FILE”;完成
而IFS=read-r文件;执行sed-i的| \$tnawdjmoxr | | g'-“$FILE”;完成<欢迎不要担心:)