O comando find
excluirá qualquer arquivo regular dentro ou abaixo do diretório /home/_backups/pokebrawl
com mais de sete dias (ou mais precisamente, não modificado na última semana).
Deve provavelmente ler
find "$DESDIR" -mtime +6 -type f -delete
ou
find "${DESDIR:?Not set correctly}" -mtime +6 -type f -delete
como há uma boa variável mantendo o nome do diretório já. A segunda variação causaria um erro se DESDIR
por algum motivo estivesse vazio ou não definido.
Estou assumindo que esta é uma maneira de manter apenas os backups da última semana. Eu sugeriria usar algo como borgbackup
ou restic
, pois eles poderiam manter os backups por muito mais tempo sem usar muito mais espaço (mesmo os backups por hora de um ano não ocupariam muito espaço se os dados não estava mudando muito). Eles fazem desduplicação de dados e o borgbackup
suporta adicionalmente a compactação (ambos suportam backups remotos e criptografia também).
Para executar o script a cada 24 horas (à meia-noite), use um cron job.
Primeiro, emita o comando crontab -e
. Isso abriria um editor com o crontab atual para o usuário ativo (isso pode ou não ser um arquivo vazio).
Em seguida, adicione
@daily /path/to/the/script.sh
(onde path/to/the/script.sh
é o nome do caminho do script).
Salve e saia do editor.
O roteiro agora seria chamado à meia-noite, mesmo à noite.
Você gostaria de executar o script às 13:30, todas as tardes, adicionar o seguinte como a entrada crontab:
30 13 * * * /path/to/the/script.sh
Veja o manual do crontab no seu sistema para detalhes sobre como escrever um cronograma do crontab ( man 5 crontab
).