Zachowaj drzewo katalogów podczas kopiowania za pomocą rsync


19

Kiedy robię coś takiego:

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

Wynikowa struktura katalogów wygląda następująco:

/home/foo/LetsPlays

Przeczytałem strony podręcznika, ale nie mogłem utrzymać struktury katalogów, dążąc do

/home/foo/Videos/YouTube/LetsPlays

w wyniku. Jakieś pomysły?

Jak zawsze dzięki, Markus


Odpowiedzi:


29

Użyj opcji -Rlub --relative, aby zachować pełną ścieżkę.

Jeśli nie chcesz pełnej ścieżki do pliku zdalnego, ale tylko jej część, rsync oferuje tę funkcję od wersji 2.6.7 (jest to wersja po stronie wysyłającej, która w twoim przypadku jest stroną lokalną).

Po prostu wstaw kropkę /./do ścieżki, w której chcesz ją przerwać

Dawny:

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

spowodowałoby powstanie tej zdalnej ścieżki:

/home/foo/YouTube/LetsPlays

Świetna odpowiedź, dziękuję.
Stephen
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.