Ini dijelaskan dalam rsync(1)
halaman manual:
Garis miring pada sumber mengubah perilaku ini untuk menghindari pembuatan tingkat direktori tambahan di tujuan. Anda dapat memikirkan tentang membuntuti
/
pada sumber yang berarti "salin isi direktori ini" sebagai kebalikan dari "salin direktori dengan nama", tetapi dalam kedua kasus atribut dari direktori yang memuatnya dipindahkan ke direktori yang memuat di tujuan. Dengan kata lain, setiap perintah berikut menyalin file dengan cara yang sama, termasuk pengaturan atribut/dest/foo
:rsync -av /src/foo /dest rsync -av /src/foo/ /dest/foo
Untuk tujuan, saya tidak berpikir itu memiliki konsekuensi besar. Ada perbedaan jika sumbernya adalah file dan tujuannya tidak ada — ini akan membuat salinan dari SRC
disebut DEST
:
rsync SRC DEST
, sedangkan ini akan membuat direktori DEST
dan salin SRC
file ke dalamnya:
rsync SRC DEST/
Saya mengujinya dengan rsync 3.1.3 di Arch Linux, hasilnya seperti di bawah ini:
1. rsync -avPzu test [email protected]:/home/login/test "test" directory is copied inside of existing "test" on remote (structure is then test/test/...)
2. rsync -avPzu test [email protected]:/home/login/test/ same as above
3. rsync -avPzu test/ [email protected]:/home/login/test content of "test" directory is synchronized with the remote "test" directory
4. rsync -avPzu test/ [email protected]:/home/login/test/ same as above
5. rsync -avPzu test [email protected]:/home/login/ same as above
6. rsync -avPzu test [email protected]:/home/login same as above
Metode 3-6 adalah yang benar dalam kasus ini, bertentangan dengan jawaban yang diterima.