Remover por data no Shell Script

0

Eu tenho um script de shell que cria um backup de um banco de dados. Eu gostaria de manter os últimos 7 dias para arquivos.

Qual é a sintaxe de que preciso para remover arquivos em um diretório por data ou posso manter os 7 arquivos mais novos em um diretório?

Script executado via cron

EDIT: algo assim?

find -type f -mtime +7 -maxdepth 1 -exec rm -f {} \;
    
por brentwpeterson 10.09.2014 / 22:44

2 respostas

1

Você pode usar find /path/to/backups -type f -mtime +7 -maxdepth 1 , e todos os arquivos com mais de 7 dias poderão ser excluídos.

    
por 10.09.2014 / 22:50
0
find /path/to/backups -type f -mtime +7 -maxdepth 1 -delete

Sua ideia de usar exec também pode funcionar, mas você ainda precisa do caminho para o diretório de backup e seu exec não está correto. Pode ser

find /path/to/backups -type f -mtime +7 -maxdepth 1 -exec rm -f {} \;

Além disso, não tenho certeza se você precisa da opção -maxdepth ; você está preocupado em descer em diretórios de crianças? Eu não vi nada sobre isso na sua pergunta.

    
por 10.09.2014 / 23:02