man rsync:
-m, --prune-empty-dirs prune empty directory chains from file-list
Eu gostaria de espelhar somente arquivos específicos (por exemplo * .jpg), mas o rsync cria diretórios vazios no host de destino que não possuem nenhum arquivo * .jpg neles.
Minha sintaxe é:
rsync -arv
--include '*/'
--include '*.flv'
--exclude '*'
host_source/ host_dest/
Eu tento criar um arquivo com todos os caminhos e padrões de arquivos correspondentes * .jpg:
find source/ -iname *.jpg > myfiles.txt
/* and I use "sed" to filter the parent path to be OK */
Então, agora corro:
rsyn -ar --files-from=myfiles.txt host_source/ host_dest/
Isso funciona bem; nenhum diretório vazio é criado em "host_dest", mas agora, se houver alguns arquivos em "host_dest" que devem ser excluídos em "host_source", o rsync não os excluirá.
Então, como eu digo ao rsync para "olhar" SOMENTE para o padrão de arquivo e não criar diretórios vazios no host_dest?
Muito obrigado pelas respostas antes de enlouquecer:)
man rsync:
-m, --prune-empty-dirs prune empty directory chains from file-list
Tente remover a opção recursiva da linha de comando
rsync -a --files-from = myfiles.txt host_source / host_dest /