cara menyalin atau mencadangkan file yang mengabaikan file dot

10

Saya ingin mencadangkan semua file dari partisi laptop saya ke HDD eksternal.

Saya berlari, misalnya

cp -a /med*/ravb*/*00   /med*/ravb*/M*L*/7.3GB_CP && echo "7.3GB BACKED UP PROPERLY" || echo "7.3GB FAILED TO BACK UP"

Masalahnya adalah bahwa file dot juga termasuk yang tidak saya inginkan. Apa yang harus saya lakukan agar mengabaikan semua file dot untuk membuat cadangan.

Ravi
sumber

Jawaban:

22

Kenapa tidak digunakan rsyncsaja? Itu dibuat untuk pekerjaan itu!

rsync -uan --progress --exclude=".*" <source> <destination>

Di atas akan mencantumkan semua file yang akan diarsipkan tanpa benar-benar menyalin apa pun. Periksa apakah daftarnya benar, kemudian jalankan lagi dengan nopsi yang dihapus untuk menyalin file (Anda juga dapat menghapus --progressuntuk pengalaman yang lebih tenang).

Untuk memperluas, opsi di atas adalah: -

u - 'perbarui' - hanya menyalin file yang lebih baru.

a - 'arsip'

n - 'dry-run` - jangan menyalin, cukup cantumkan apa yang akan dilakukan.

--progress - menunjukkan kemajuan salinan

--exclude=".*" - kecualikan file yang dimulai dengan titik

garethTheRed
sumber
Tampak hebat! Ya inilah yang saya inginkan. Saya akan menjalankannya & memperbarui Anda.
Ravi
Kemarin saya mencadangkan semua partisi dari laptop ke HDD eksternal saya menggunakan rsync. Ini alat cadangan yang luar biasa. Ya Anda benar, itu dibuat untuk pekerjaan !!! Sampai sekarang saya telah menggunakan tar, cpio & cp untuk cadangan. Tetapi perintah ini rsyncadalah yang terbaik. Tugas yang tampaknya agak rumit, rsyncmembuatnya sangat sangat mudah & nyaman. Benar-benar perintah serbaguna yang hebat. Seandainya saya menggunakan tar, maka untuk melihat file cadangan, saya harus membuka dengan aplikasi arsip tar (yang tidak memberikan tampilan antarmuka yang baik) atau saya harus memulihkan dari arsip. Tetapi rsynctanpa masalah seperti itu.
Ravi