Saya menggunakan server ubuntu 12,04, sekarang saya ingin membuat cadangan beberapa file menggunakan rsync, ini dia coba:
rsync -aAX $HOME/Documents/* $HOME/Backups/TEST --exclude={$HOME/Documents/another/*,$HOME/Documents/temp/*}
Seperti yang Anda lihat, saya ingin membuat cadangan semua file dalam folder $ HOME / Documents to folder $ HOME / Backups / TEST , tetapi mengecualikan file dalam folder lain dan temp . Tapi saya gagal, rsync masih menyalin file di kedua folder yang dikecualikan:
ls $HOME/Backups/TEST/another
test
Tes adalah file di folder lain , dan juga disalin meskipun saya mengecualikan file dalam rsync, mengapa? Bagaimana cara membiarkan file-file itu benar-benar dikecualikan?
--exclude=/foo
akan mengecualikan direktorifoo
secara langsung di sumbernya, tetapi--exclude=foo
akan mengecualikan direktori yang bernama foo, bahkan dalam subdirektori.Anda mungkin menemukan lebih mudah untuk menambahkan
.rsync-filter
file di direktori sumber Anda, dan menggunakan-F
opsi.Dari halaman manual:
Misalnya: dalam $ HOME / Documents / .rsync-filter
Alih-alih
-
, Anda juga bisa menulis seluruh kataexclude
.Sekarang kamu bisa
sumber