Ao executar um find
comando em um diretório muito grande, descubro que find
o 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 find
que 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
...)