Descrição
O script remove, recursivamente, de um diretório, os arquivos que baterem com determinada data / tempo de criação. Basta alterar o diretório, date / tempo .. e agendar no Cron.
NOTA! o script anterior dependia do aplicativo find 4.2.28 (findutils_4.2.28 >) para o find reconhecer o %M, dentro do script.
Esse novo script pode ser usado com findutils mais antigos e novos também.
[ Download:
limparDir.sh ]
[
Enviar nova versão ]
[ Esconder código-fonte ]
#!/bin/bash
# fabio pupo. 15/08/07
# GPL v.3
# agendar script no arquivo /etc/crontab para ser executado todos os dias.
# definir o diretorio a ser limpo:
# nao utilizar nomes como '~/'
_diretorioDia='/home/pr908236'
_diretorioMes='/home/pr908236'
_diretorioAno='/home/pr908236'
##########################################
#---------VERSAO 1.0
##########################################
# ↓↓↓↓↓↓ substituir por, ex.: -1 week
# para dias. troquei %M por %m e usei 'cut' por coluna -f3 -d ' ' e nao por caractere .. para ter compatibilidade com o pacote findutils 4.1.20
find $_diretorioDia -type f -printf "%m %TY-%Tm-%Td %p\n" | grep `date -d '-4 day' +%Y-%m-%d` | cut -f3 -d ' ' | xargs rm -f
# para meses.
#find $_diretorioMes -type f -printf "%m %TY-%Tm-%Td %p\n" | grep `date -d '-1 month' +%Y-%m` | cut -f3 -d ' ' #| xargs rm -f
# para anos.
#find $_diretorioAno -type f -printf "%m %TY-%Tm-%Td %p\n" | grep `date -d '-1 year' +%Y` | cut -f3 -d ' ' #| xargs rm -f
# tabela de exemplos para substituicao:
# -2 day dois dias atras
# -1 week uma semana atras
# -3 month um mes atras
Scripts recomendados
Criador de pacotes para o Slackware
Backup de Diretórios
Script Suicida!
Mostrando aviso no notificação usando Yad
Monta CDROM
Comentários
[1] Comentário enviado por
bruno.damada em 31/08/2007 - 15:58h:
ou entao vc faz assim
find /diretorio -mtime +10 -exec rm {} \;
no caso do 10 significa, arquivos com mais de 10 dias...
[]'s
[2] Comentário enviado por
fooues em 02/09/2007 - 12:24h:
Bruno, blz, ahh sim .. mas nesse caso o comando retorna arquivos a mais de 10 dias e não arquivos que foram criados no 10 dia anterior a data atual ..
vlew
;)