Dışlama listenizde mutlak yollar sağlıyorsunuz .
Rsync ile başlayan tüm dışlama (veya içerme!) Yolları /
" aktarım köküne " bağlanır .
Bu durumda transferin kökü /home/chris
. Eğer yaptıysanız:
rsync -Paz --exclude-from 'rsync-exclude.txt' / admin@192.168.1.65:
... o zaman istisnalarınız işe yaramalı (ancak o dosya sistemindeki her şeyi kopyalayacaksınız !)
Eğer sadece senkronize çalışıyoruz Fakat ev dizini ve hiçbir alt dizin yoktur /home/chris
adında "home/chris/Downloads"
, rsync
eşleşen hiçbir şey bulur.
Bu yüzden /home/chris
parçaları rsync-exclude.txt
dosyanızdan çıkarmayı deneyin .
Aslında, dosyada sadece bir satır gerekir:
/Downloads
Not Eğer lider belirtmek yoksa o /
ve diğer dizinleri adında var olur "Downloads"
, bu da hariç tutuluyordu. Yalnızca "üst düzey" in (kaynak dizine, aka "aktarımın kökü") Downloads
dizini hariç tutmak istediğinizi varsayalım , bu yüzden öncü isteyeceksiniz /
.
KOLAY YOL (sadece birkaç yolu hariç tutmak için)
Yalnızca bir dizini dışlamanız gerekiyorsa, bunu yapın (ayrı bir dosyadan kaçınarak):
rsync -Paz --exclude /Downloads /home/chris/ admin@192.168.1.65:LinuxHome
Ayrıca --exclude
, etiketleri birlikte zincirleyebilirsiniz :
rsync -Paz --exclude /Downloads --exclude '/Something Else' --exclude .hiddenFile /home/chris/ admin@192.168.1.65:LinuxHome
Hiçbir çizgi var çünkü bu bir dışlamak unutmayın .hiddenFile
gelen herhangi her dizin o kopya!
Ancak, birkaç istisna dışında bir süreniz varsa, daha iyi durumdasınız --exclude-from
ve bir dosya.
Not
Ben sen onu görüyoruz, ama rsync ile yeni olanlar gerekir sonunda eğik çizgi not arasında/home/chris/
rsync
Man sayfasından alıntı yapmak için , "Bir dizinin ismini kopyalamak yerine" bu dizinin içeriğini kopyala "anlamına gelen bir kaynağa / kaynağa bakabilirsiniz."
Eğer çizgi sondaki o bıraktığı Yani, sen adlı bir dizinde ile sona ereceğini chris
, hedef dizin içindeki içeren her şeyi /home/chris
(orijinal hariç Downloads
tabii dizininde!).