Salin isi direktori rsync tetapi bukan direktori itu sendiri


120

Saya mencoba menyinkronkan dua konten folder dengan nama berbeda:

rsync -av ~/foo user@remote.com:/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

18
biarkan saja garis miring sudah cukup
exussum

Jawaban:


190

Mencoba rsync -av ~/foo/ user@remote.com:/var/www/bar/


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.


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

0

Arahkan ke direktori yang ingin Anda salin, jadi:

cd ~/foo 

Jalankan ini:

rsync -avz . user@remote.com:/var/www/bar
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.