Saya mencoba menyalin isi dari serangkaian direktori secara non-rekursif ke sistem remote lain.
/dirA/dir1/file
/dirA/dir2/file
/dirA/dir3/file
dir1, dir2, dan dir3 berisi banyak direktori yang saya tidak ingin disalin. Salin pada host jarak jauh ke / dirB yang mempertahankan struktur direktori yang sama.
Saya mencoba:
rsync /dirA/*/ host:/dirB/
rsync /dirA/ host:/dirB/
Tetapi mereka tidak melakukan apa yang saya inginkan.
-f '- /*/'
untuk membatasi hanya file level atas. Saya juga harus menentukan-f '- .*'
untuk mengecualikan file dot, karena saya menyinkronkan direktori home.Solusi di atas (oleh PleaseStand) tidak berfungsi untuk saya karena beberapa alasan. Ini berhasil meskipun:
rsync -avc --no-r ./source/* ./destination/
Ada juga alternatif ini:
rsync -avc --exclude " / "./source/ ./tujuan/
sumber
Salah satu "fitur" dari rsync adalah bagaimana direktori diurai.
rsync /dirA/ host:/dirB/
danrsync /dirA host:/dirB
secara teoritis harus setara.Karena tidak ingin mendorong kekambuhan, Anda ingin menghindari
-r
,-a
yang selain hal-hal lain menyiratkan-r
.Saya masih belum selesai dengan penelitian, tetapi ini adalah jawaban awal saya.
sumber