find some/dir -iname '*.php' -exec grep -q "some string" {} \; -delete
Use -print
em vez de -delete
para garantir que o comando funcione como esperado primeiro.
Eu tenho um malware no meu servidor. Então eu descobri como encontrar todos esses arquivos maliciosos
grep -r --include*.php "Some String from files" .
Isso parece funcionar bem!
mas como apagá-los? Eu tentei usar xargs
grep -r --include=*.php "FilesMan" . | xargs -I {} rm {}
Mas tenho
rm: cannot remove './www/wp-content/plugins/zuglohjetok/vaoaddiy.php:$default_action = FilesMan;': No such file or directory
Alguém pode compartilhar alguma linha mágica de código?
E também tentei procurar todos os arquivos modificados recentes no servidor por "find", mas isso me deu muitos arquivos. Existe algum outro método sofisticado para encontrar malware ou arquivos infectados?