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

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

[ Hits: 14.119 ]

 


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

Corrigindo bug do imsniff 0.04 com um simples script (gambiarra)

Jogo da Forca em Shell Script

Como trocar senhas de usuários dentro de um Shell Script

Modem USB Giant D301 - GSM/3G no Ubuntu 8.04

Filtrando sites navegados por máquinas no log do Squid

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts