FIND operandos e ordem de argumentos

1

Eu tenho um comando de localização que não tenho certeza se estou colocando meus argumentos corretamente.

find / -xdev -size -size -262144000c -o -type d \( -name .snapshot -o -name man -o -name Man -o -fstype mvfs \) -prune -o -type f

Eu só quero encontrar arquivos com menos de 250 MB que não estejam em .snapshot, em diretórios man ou em sistemas de arquivos MVFS.

Preciso colocar meu comando de tamanho entre colchetes? Preciso usar um -a em vez de um -o?

Obrigado!

    
por nitrobass24 24.09.2012 / 16:53

2 respostas

2

Copiando meu comentário para a pergunta em uma resposta ...

find / -type d \( -name .snapshot -o -name man -o -name Man -o -fstype mvfs \) -prune -o -xdev -size -262144000c -type f -print

-a está implícito entre expressões se -o não for especificado.

(Eu tenho reputação insuficiente para criar / editar comentários, meu comentário migrou com a pergunta de stackoverflow.com . No entanto, talvez a @Scott possa responder e receber o benefício por sua contribuição, eu aprendi alguma coisa. Você deve enviar uma mensagem para ele da mesma forma. Obrigado.)

    
por 25.09.2012 / 18:21
0

a resposta do crw é boa. Copiando o comentário my para uma resposta suplementar:

  • Sugiro manter o -xdev no início (após o / ).
  • Se você tem -xdev , acredito que não precisa de -fstype .
  • Além disso, você pode alterar -name man -o -name Man para -name "[Mm]an" .
por 25.09.2012 / 23:45