Problema com find: predicado inválido '-delete'

3

Eu tento rodar (unix-shell, win7):

find . -maxdepth 1 -name "*.jpg" -size -50k -delete

e obtenha o erro:

find: invalid predicate '-delete'

alguma sugestão?

    
por Kay 07.05.2013 / 22:23

2 respostas

5

Você também pode achar que os xargs são úteis, não apenas em encontrar & excluir operações, mas, em outros, onde você pode querer processar o texto depois de executar um comando. Neste caso,

find . -maxdepth 1 -name "*.jpg" -size -50k | xargs rm -f

Certifique-se sempre de verificar seu trabalho com um "eco" antes dos xargs, primeiro (para que você possa ver como são os comandos antes de executá-lo). Qual ficaria assim:

find . -maxdepth 1 -name "*.jpg" -size -50k | xargs echo rm -f
    
por 07.05.2013 / 22:57
4

A versão de find encontrada no shell unix que você está executando (no Windows) não tem -delete predicado.

Uma alternativa possível é -:

find . -maxdepth 1 -name "*.jpg" -size -50k -exec rm {} \;
    
por 07.05.2013 / 22:40