Dalam rsync saya mencoba untuk mengecualikan sub-direktori yang cocok dengan suatu pola. Tapi, saya tidak bisa membuatnya bekerja. Saya telah mengikuti beberapa contoh yang ditemukan di sini dan di Google. Tapi, saya tidak mendapatkan hasil yang benar. Ini adalah bit opsi dari perintah saya:
-avh --exclude 'branch*' --stats --delete --link-dest=$LNK
Struktur direktori sumber saya adalah
/root
/branch1
/branch2
/branch3
/other
/stillAnother
/etc
Ini adalah bagian dari skrip cadangan. $ LNK adalah tautan ke tujuan rsync hari sebelumnya.
Saya tidak ingin / root / branch1, / root / branch2, / root / branch3. atau isinya untuk disinkronkan. Tapi mereka.
Berikut adalah bit pengecualian yang sudah saya coba:
--exclude=branch*
--exclude='branch*'
--exclude '/branch*'
--exclude /branch*
Terima kasih atas bantuan / sarannya.
EDIT - untuk mengatasi tanda "kemungkinan duplikat"
Pertanyaan ini berkenaan dengan daftar direktori yang diketahui. Saya perlu mengecualikan direktori yang mengikuti pola, bahkan jika direktori tersebut belum ada. yaitu dari contoh saya, direktori lain yang bernama /branch*
dapat ditambahkan. Saya perlu membuat skrip saya menjadi bukti masa depan, dan menghindari mengedit skrip ketika direktori yang cocok dengan pola ditambahkan, karena direktori tersebut mungkin bersifat sementara.
*branch*
atau/root/branch*
tidak bentuk pendekbranch*
- pendek tidak ditemukan dan dengan demikian tidak dikecualikan.--exclude '*branch*
)Jawaban:
Anda mengecualikan aturan sudah benar. Namun, rsync tidak akan menghapus file yang dikecualikan di tujuan tanpa parameter tambahan
--delete-excluded
:Contoh:
sumber
-avh --exclude 'branch*' --stats --delete --delete-excluded --link-dest=$LNK
backup tadi malam masih mendukung direktori / branch *.rsync versi 3.1.3 (mungkin lebih awal, belum dicentang) dengan benar mengecualikan subdirektori menggunakan sintaks ini (jelas mengganti
exclude_dirname
dengan pola yang ingin Anda kecualikan):Ini juga berfungsi dengan wildcard. Pertanyaan asli digunakan
'branch*'
, jadi ini berfungsi:Semoga ini membantu.
sumber