Tão perto ...
$ rsync -r /a/b/c/ /a/d/e/
Se eu executar isso:
rsync -r /a/b/c /a/d/e
Eu vou entender isso:
/a/d/e/c
mas estou procurando apenas:
/a/d/e
isso não resolverá esse problema:
rsync -r /a/b/c/* /a/d/e
porque o acima irá pular os arquivos de pontos (arquivos ocultos).
Como posso resolver isso - copiando para um diretório existente, neste caso, pasta com o nome e
?
rsync
trata a fonte de maneira diferente se ela terminar com um /
.
Com um /
: rsync -r source/ target
Resultado: Cria target
como uma cópia de source
.
Sem um /
: rsync -r source target
Resultado: Cria target/source
como uma cópia de source
.
O manual rsync
menciona isso:
You can think of a trailing
/
on a source as meaning "copy the contents of this directory" as opposed to "copy the directory by name", but in both cases the attributes of the containing directory are transferred to the containing directory on the destination.
Tags rsync