2013-03-13 23 views
5

Chcę prostej i działającej (wiele) opcji exclude wewnątrz mojego polecenia rsync. Powiedzmy, że wykluczy a file i a directory:Prosta opcja WYŁĄCZENIE RSYNC?

  • /var/www/html/test.txt
  • /var/www/html/images/

co zrobiłem to:

rsync -avz --exclude="/var/www/html/test.txt" --exclude="/var/www/html/images/" /var/www/html [email protected]:/var/www

lub

rsync -avz --exclude=/var/www/html/test.txt --exclude=/var/www/html/images/ /var/www/html [email protected]:/var/www

lub

rsync -avz --exclude /var/www/html/test.txt --exclude /var/www/html/images/ /var/www/html [email protected]:/var/www

..

Ale jednak --exclude nie działa!
Wszystko wychodzi!

  • Jak to zrobić w tym prostym formacie?

Uwaga: Nie chcę również używać zewnętrznego pliku listy wykluczeń. Po prostu chcę wszystko w jednym prostym poleceniu.

Odpowiedz

12

Rozwiązałem go samodzielnie po tym, jak wiele razy się nauczyłem i testowałem. Prawdziwym problemem był zrozumiały (dla mnie) format użycia opcji --exclude.

nie wiem jak robią inni, ale ja po prostu okazało się, że:

  • „--exclude” ścieżka nie może być pełna ścieżka bezwzględna!

Ponieważ używałem ścieżki (ścieżek) takich jak: --exclude /var/www/html/text.txt, która spowodowała, że ​​rzecz NIE DZIAŁA. Więc użyłem:

--exclude text.txt --exclude images/ 

.. i to DZIAŁA!

+0

Ostrzeżenie: to polecenie wyklucza pliki 'text.txt' i katalogi' images' w dowolnym miejscu, w którym znajdzie je w hierarchii plików (tj. Nie tylko na najwyższym poziomie katalog, z którego pochodzi kopia zapasowa), co może nie być tym, czego potrzebujesz. – pgoetz

+0

Chciałbym, żeby to działało, ale to nie działa dla mnie –

5

Personita podobna jest do formatu --exclude={text.txt,images/}.

  • Pamiętaj, że z rsync, wszystko wykluczyć (lub obejmuje) ścieżki rozpoczynające się/są są zakotwiczone do korzenia transferu który w swoim przykładzie będzie katalog /var/www/html !!, więc jeśli to będzie określić /text.txt być tylko plikiem, który jest @ katalogiem głównym twojego katalogu transferu, nie znajdującego się powyżej w drzewie. Więcej informacji i przykładów można znaleźć pod następującym numerem: here