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

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

[ Hits: 13.775 ]

 


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

Como contornar o erro -bash: 08: value too great for base (error token is "08")

Configurar Gedit para compilar e executar scripts em PASCAL

Políticas personalizadas do SELinux

tres - Transação Executivo-operacional em Shell

Shell Script nosso de cada dia - Episódio 4

  

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