Incluir e Excluir Rsync com Datas

1

Eu tenho um monte de arquivos de log que eu sincronizo com outro servidor usando o rsync. Os arquivos de log são todos nomeados no formato AAAA-MM-DD XXX.txt. Só quero sincronizar o mês atual e o último mês de registros, mas meus filtros parecem estar em conflito. Aqui está o que eu tenho no meu arquivo de inclusão / exclusão:

- 2009*
- 2010*
- 2011*
- 2012*
- 2013*
+ 2013-03*
+ 2013-04*

As inclusões / exclusões acima não fazem com que nada seja sincronizado (suponho que -2013* apareça antes dos meses específicos. No entanto, se eu remover -2013* do arquivo acima e deixar apenas 2013-03 e 2013 -04, ele quer sincronizar qualquer arquivo a partir de 2013.

Eu sei que estou perdendo algo na ordem ou no formato dos meus filtros. Estava imaginando se alguém tinha uma sugestão. Obrigado antecipadamente!

    
por Jason 08.04.2013 / 22:42

2 respostas

1

- 2013* exclui tudo desde 2013, e isso não está sendo revertido se você incluir uma inclusão mais específica posteriormente.

Tente

+ 2013-03*
+ 2013-04*
- 2013* 

e consulte a seção "Regras de filtragem" da página de manual para obter mais informações.

    
por 08.04.2013 / 23:04
2

O manual é explícito sobre isso:

As the list of files/directories to transfer is built, rsync checks each name to be transferred against the list of include/exclude patterns in turn, and the first matching pattern is acted on: if it is an exclude pattern, then that file is skipped; if it is an include pattern then that filename is not skipped; if no matching pattern is found, then the filename is not skipped.

    
por 08.04.2013 / 23:03

Tags