alto uso de memória do comando `find`

alto uso de memória do comando `find`

Ao executar um findcomando em um diretório muito grande, descubro que findo uso de memória aumenta muito mais do que eu pensava. Achei muito difícil procurar soluções devido ao uso sobrecarregado da palavra "encontrar";) Este é o comando:

find /var/dir -size +500k -iname "pattern_*" -mtime +90 -type f -exec rm {} \; -print

Find mantém toda a lista de arquivos de um diretório na memória enquanto o processa? Parece que poderia apenas examinar uma entrada e seguir em frente. O diretório com o qual estou lidando contém cerca de 2 milhões de arquivos e estou começando a ter problemas de limite de memória agora.

Há alguma maneira de usar findque reduza o uso de memória? Alguma alternativa por aí que se comporte melhor? Eu só preciso excluir arquivos neste diretório que atendam a alguns critérios e depois imprimi-los. (Minha solução de último recurso é escrever meu próprio programa para executar o que preciso, transmitindo os resultados de ls...)

informação relacionada