Ordem dos argumentos para encontrar

0
0:root@SERVER:/tmp # find /tmp/foo* -mtime +74 -ls | wc -l
    1330
0:root@SERVER:/tmp # find /tmp/foo* -ls -mtime +74 | wc -l
    1750
0:root@SERVER:/tmp # oslevel -s
6100-09-04-1441
0:root@SERVER:/tmp # uname
AIX
0:root@SERVER:/tmp # 

Pergunta: Por que não encontrar o mesmo resultado?

    
por LoukiosValentine79 14.03.2016 / 10:39

1 resposta

2

Como você usou o operando -ls , find retorna true imediatamente e imprime o nome do caminho atual, cancelado por padrão -print , não há ação após -mtime +74 , não teve efeito:

-ls             Always evaluates to the value True. Causes the current path name
                to be printed together with its associated statistics

Se você fez:

find . -ls -mtime +74 -print

então você obteve a agregação do resultado de ambos os operandos.

    
por 14.03.2016 / 10:53

Tags