Isso deve funcionar usando o grep:
grep -L bluecar *.html | xargs rm
Existem centenas de arquivos .html
em um diretório. Preciso excluir arquivos que não contenham a palavra bluecar
em seu conteúdo.
Eu achei que sed com rm faria isso, mas eu não sei como combiná-los.
Com o GNU grep / xargs você pode usar
grep -LZ -- str *.html | xargs -r0 rm
A ferramenta find
é a usual para usar.
find . -name "*.html" \( -exec grep -q bluecar {} \; -o -exec rm {} \; \)
ou
find . -name "*.html" ! -exec grep -q bluecar {} \; -exec rm {} \;
Mas experimente copiar primeiro ...