Você poderia usar
/usr/bin/grep -rlZ 'Not Found' | xargs -0 -r rm --
em que --
impede que o utilitário interprete nada posteriormente como uma opção ou
/usr/bin/grep -rlZ 'Not Found' . | xargs -0 -r rm
que faria com que grep
prefixasse os nomes de caminho de todos os arquivos com ./
. A opção -r
para xargs
faz com que xargs
não execute o comando se não receber entrada de grep
(ou seja, se nenhum arquivo contiver a sequência).
Eu pessoalmente provavelmente teria usado find
embora:
find . -type f -exec grep -qF 'Not found' {} ';' -delete
(o que eu acho faz a mesma coisa: excluindo recursivamente os arquivos que contém a string Not found
)