Como posso excluir todos os arquivos de uma pasta que não foram acessados em um determinado período de tempo?

12

Gostaria de executar uma tarefa do cron noturno que exclua todos os arquivos de uma pasta que não tenha sido acessada em uma semana ou mais. Qual é a maneira mais eficiente de fazer isso em bash?

    
por bloudermilk 13.07.2011 / 01:35

2 respostas

19

Você deseja a find tool .

find folder -depth -type f -atime +7 -delete

(Isso exclui todos os arquivos ( apenas os regulares , sem canos, dispositivos especiais, diretórios, links simbólicos ) na pasta especificada e em todos os subdiretórios (recursivamente) onde o último o tempo de acesso é maior que 7 dias atrás.)

    
por 13.07.2011 / 01:42
3

Você pode querer verificar tmpwatch , que pode ser colocado em um cron job. Não há necessidade de rolar-se com find . No RHEL está no tmpwatch RPM.

    
por 13.07.2011 / 04:16