Fazendo backup ou cópia somente dos arquivos alterados no último dia

Publicado por Carlos Eduardo de Andrade em 09/11/2007

[ Hits: 12.467 ]

 


Fazendo backup ou cópia somente dos arquivos alterados no último dia



Muitas vezes queremos fazer um backup ou copiar os arquivos que foram alterados a partir de determinada data. Isto geralmente é útil quando devemos manter certa ordem em nossas coisas, e não sobrescrever trabalho já feito.

Para isso podemos utilizar o comando find, com alguns de seus argumentos. Veja o exemplo abaixo:

$ find $(cat $INCLUDE_LIST) -mtime -1 -type f -print | \
tar -czf $BACKUP_DIR/$BACKUP_NAME --exclude-from=$EXCLUDE_LIST -


Nele, temos o find aplicado sobre uma lista de arquivos (descrita pelo arquivo dentro da variável $INCLUDE_LIST). Depois vem o segredo: os argumentos -mtime -1 -type f indicam para o find só relatar arquivos com data de alteração do no máximo 1 dia. O argumento -print apenas indica que tudo será impresso na saída padrão que é canalizada através do pipe | para o comando tar.

No tar temos mais algumas variáveis, com destaque para o argumento --exclude-from=$EXCLUDE_LIST que indica para o tar excluir os arquivos de uma lista contida no arquivo indicado pela variável $EXCLUDE_LIST. Note o sinal "-" no final do comando: isto indica para o tar assumir como entrada, o que vem da canalização. Portanto, NÃO ESQUECE DELE. ;-)

Espero que tenha ajudado!

Outras dicas deste autor

Windows montando partições Linux

Bloqueando objetos Flash de páginas

Leitura recomendada

Script para o netfilter (iptables)

Eliminando todos os processos de determinada variável

Testando se a conexão com a internet está ativa

Usando o script alertaTwitter

Receber e-mail quando o root logar via SSH

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário