Também curto e doce: cat list | xargs rm
Isso pressupõe que você tenha um arquivo chamado 'list' de todos os arquivos .php maliciosos e que você esteja no diretório que contém os arquivos .php (só para ficar claro, mas aposto que você já entendeu isso).
Se qualquer um dos nomes de arquivo contiver novas linhas, isso será perigoso executar , particularmente porque você já sabe que eles foram criados por um adversário mal-intencionado. Se você tiver a lista de nomes de arquivos em um arquivo de texto, poderá verificar a lista antecipadamente e certificar-se de que nenhuma das linhas excluirá arquivos que você deseja preservar.
Além disso, se o invasor conseguiu obter scripts php maliciosos nesse host, isso pode não ser o seu maior problema . Estou apenas respondendo a pergunta que você fez, e @soubunmei deu uma resposta melhor porque ela sabia um pouco mais sobre o comando find do que eu, mas nenhuma das respostas garante segurança . Desculpe se isso não foi claro e obrigado a @soubunmei e @MichaelHomer por apontar minha linguagem descuidada. Você deve conversar com um profissional de segurança cibernética se acreditar que alguém mal-intencionado pode ter obtido privilégios elevados no host.
Pessoalmente, suspeito que existe uma boa forma de "extensão e data" para fazer isso, como você pediu, que algumas pessoas podem achar mais elegante, mas como você já tem a lista, por que não usá-la?
Eu testei isso em um arquivo chamado 'list' que continha as linhas:
file1
file2
e esses arquivos estavam no meu desktop. Funcionou como esperado. Eu recomendo strongmente que você teste isso em um pequeno estágio primeiro para ver como ele se comportará, e também faça o backup do diretório antes de qualquer remoção de arquivo em massa. O espaço no disco rígido é muito mais barato que o tempo dos programadores!