A adição de um comando find
ao cron funcionaria para você?
find /path/ -type f -mtime +5 -name '*.log'
Você pode colocar camadas extras para encontrar apenas os arquivos desejados. -mtype
é a parte limitadora de data que localiza arquivos modificados pela última vez há mais de 5 dias. Você pode mudar isso para apenas olhar para a criação ou até mesmo os tempos de acesso (se você não estiver usando noatime
no seu fs)
Quando você estiver obtendo os arquivos corretos, coloque -exec rm {} \;
no final. Você poderia usar -delete
, mas isso desmoronará se você tiver muitos arquivos sendo excluídos de uma só vez. Só faça isso quando tiver certeza!
Quando você quiser programá-lo, su
na conta de usuário correta (a pessoa que possui os arquivos) e, em seguida, executar crontab -e
. Você pode então escrever o comando e quando você sair, ele será executado na programação que você definiu. Você pode ler mais sobre o cron aqui: