Preservar a árvore de diretórios ao copiar com o rsync

19

Quando faço algo como:

rsync Videos/YouTube/LetsPlays foo@bar:/home/foo/

A estrutura de diretórios resultante se parece com:

/home/foo/LetsPlays

Eu li as páginas de manual, mas não consegui uma opção para manter a estrutura de diretórios, visando

/home/foo/Videos/YouTube/LetsPlays

como resultado. Alguma ideia?

Como sempre obrigado, Markus

Markus
fonte
relacionado: serverfault.com/questions/39522/…
Ciro Santilli escreveu:

Respostas:

29

Use a opção -Rou --relativepara preservar o caminho completo.

Se você não deseja o caminho completo do arquivo remoto, mas apenas parte disso, o rsync oferece esse recurso desde a versão 2.6.7 (esta é a versão no lado de envio, que é o lado local no seu caso).

Basta inserir um ponto /./no caminho em que você deseja quebrá-lo

Ex:

rsync --relative Videos/./YouTube/LetsPlays foo@bar:/home/foo/

resultaria neste caminho remoto:

/home/foo/YouTube/LetsPlays
Jan
fonte
Ótima resposta, obrigado.
Stephen