Exclui todos os arquivos com mais de X dias

5

Portanto, eu tenho uma configuração do cron para fazer backups de uma pasta em um tarball a cada hora. Eu gostaria de adicionar ao script de shell que eu estou usando a capacidade de ter arquivos deletados automagicamente após cerca de três dias, para que eu não tenha uma porcaria de arquivos.

Como posso fazer isso? Obrigado.

    
por Chiggins 21.01.2011 / 18:09

2 respostas

8

Adicione esta linha ao script (modifique de acordo):

find /path/to/backup_folder -mtime +3 -exec rm {} \;

Isso pressupõe os seus tarballs de backup e apenas os seus tarballs de backup residem nessa pasta. Você também pode usar o utilitário tmpwatch :

tmpwatch -mf /path/to/backup_folder 72
    
por 21.01.2011 / 18:12
3

Do meu crontab no meu mac:

0 13 * * * /usr/bin/find /Users/dharris/.Trash -atime +14 -mindepth 1 -maxdepth 1 -print0 | xargs -0 ls -ltd

Usar -atime em vez de -mtime significa que, se eu acessar o arquivo, ele não será excluído.

Minha versão aqui usa +14 por duas semanas, mude para +3 para suas necessidades.

    
por 21.01.2011 / 18:13

Tags