Salin isi direktori rsync tetapi bukan direktori itu sendiri

120

Saya mencoba menyinkronkan dua konten folder dengan nama berbeda:

rsync -av ~/foo [email protected]:/var/www/bar

Saya ingin menyalin konten fooke bardalam host jarak jauh, tetapi bukan direktori fooitu sendiri. Saya sudah mencoba sesuatu seperti itu foo/*, tetapi rsync tidak mendukungnya.

rsync selalu membuat

/var/www/bar/foo
Tombart
sumber
18
biarkan saja garis miring sudah cukup
exussum

Jawaban:

190

Mencoba rsync -av ~/foo/ [email protected]:/var/www/bar/

Protostome
sumber
37
Perilaku ini aneh, dibandingkan dengan mvatau cp.
zeekvfu
Tampaknya aneh dan tidak konsisten untuk membuat garis miring yang relevan hanya untuk perintah khusus ini. Bertanya-tanya mengapa itu belum diubah.
Luke Davis
39
Seandainya seseorang juga bertanya - tanya mengapa ini berfungsi: ini adalah jejak /setelah nama direktori.
Etienne Bruines
32

Itu mudah,

rsync /var/www/ /home/var- menyalin konten / var / www / tetapi bukan folder www itu sendiri.

rsync /var/www /home/var- menyalin folder www beserta semua isinya.

"/" Membuat perbedaan.

Marcelo Guedes
sumber
6
Ini harus menjadi jawaban yang diterima yang benar-benar menjelaskan perbedaannya
edi9999
29

Tidak hanya terkait dengan rsync, tetapi saat Anda mencari contoh tentang cara menggunakan perintah GNU / Linux, Anda dapat menggunakan "eg" yang menampilkan contoh eksplisit. misalnya tersedia di sini, dengan petunjuk cara menginstalnya: https://github.com/srsudar/eg

Hasilnya eg rsyncadalah sebagai berikut

# rsync


copy the folder source_dir and its content into destination_dir

    rsync -av source_dir destination_dir


copy the contents of source_dir (trailing slash) into destination_dir

    rsync -av source_dir/ destination_dir
Olivier
sumber
0

Arahkan ke direktori yang ingin Anda salin, jadi:

cd ~/foo 

Jalankan ini:

rsync -avz . [email protected]:/var/www/bar
Dan612
sumber