rsync com filtro

1

Eu quero copiar os arquivos de código-fonte de um sistema de arquivos remoto para o servidor local. As extensões do arquivo de código-fonte são *.? Pp, *. [CHh].

Como posso executar um rsync para copiar a hierarquia do sistema de arquivos remoto e os arquivos de código-fonte, excluindo tudo o mais (binários, bibliotecas, objetos, arquivos de repositório ...)?

PS: Eu usei esta linha horrível até agora, deve haver uma solução mais fácil:

$ rsync --include "*/" --include="*/*" --include="*/*/*" --include="*/*/*/*" --include="*.[CHh]" --include="*.?pp" --exclude="*" -axW user@remote/my/remote/dir ./
    
por Robert Kubrick 30.01.2013 / 19:51

1 resposta

2

Você pode usar uma estrela dupla para simplificar os includes:

rsync -axW --exclude="*" --include="**/.[CHh]" --include "**/*.?pp" ...
    
por 30.01.2013 / 20:14

Tags