Encontre e remova muitos arquivos por conteúdo específico [duplicado]

4

Eu tento encontrar muitos arquivos em várias pastas com conteúdo específico e excluí-los.

find dir.*/* -exec grep -l "content" {} \; | xargs rm -f

E recebo a seguinte mensagem:

-bash: /bin/find: Argument list too long

Você pode me ajudar?

    
por Webeith 30.08.2012 / 21:40

1 resposta

4

Deixe o find executar a recursão. Além disso, não use xargs : seu formato de entrada não é compatível com o formato de saída de find . Se você tem o GNU find ou o FreeBSD / NetBSD / OSX, ele tem tudo o que você precisa.

find dir.* -mindepth 2 -type f -exec grep -q "content" {} \; -delete
    
por 31.08.2012 / 03:16

Tags