Exclui arquivos modificados nas últimas n horas de uma pasta

1

Eu tenho uma pasta onde às vezes recebo alguns arquivos grandes depois de fazer algum trabalho. Eu os apago manualmente. Eu sei que é possível excluí-los após 1 dia ou mais, mas gostaria de excluí-los se eles tiverem sido modificados nas últimas horas.

Existem arquivos nessa pasta que eu NÃO quero excluir e todos eles têm nomes de arquivos semelhantes, porém imprevisíveis. Eu não posso simplesmente usar del para deletar os mais novos, eu tenho que confiar na data de modificação.

    
por TMRW 21.08.2010 / 06:54

2 respostas

1

find /some/dir -type f -mmin -<minutes old> -print0 | xargs -0 rm

Isso encontra todos os itens em /some/dir que são arquivos e têm menos de <minutes old> minutos e os remove. Não esqueça o - antes do número de minutos. Além disso, se o mmin não resolver o problema, tente cmin.

    
por 21.08.2010 / 06:59
0

IIRC o Windows Explorer pode classificar por hora de modificação, então você pode fazer isso e selecionar os arquivos que foram modificados no intervalo de tempo desejado.

slartibartfast deu uma resposta que assume que você tem utilitários semelhantes ao Unix instalados. No Windows, isso pode ser cygwin ou utilitários GNU Win32 ou Microsoft Windows SFU ou UWIN . Se você instalar um desses, certifique-se de usar seu find e não o comando nativo não relacionado do Windows.

    
por 21.08.2010 / 12:48