Bagaimana saya bisa menggabungkan dua folder serupa-tetapi-tidak identik?

11

Saya memiliki folder (yang diisi dengan banyak sub-folder dan file) yang ada di drive FireWire [sumber] yang saya coba pindahkan ke USB drive [tujuan].

Saya mencoba untuk memindahkan semua file dari Sumber ke Tujuan.

Saya mulai melakukan ini melalui Finder, tetapi itu memberi saya kesalahan izin sekitar 1/8 dari jalan melalui proses dan kemudian berhenti.

Saat memindahkan file antar drive, saya yakin Finder pertama kali melakukan 'copy' dan kemudian menghapus 'sumber' hanya ketika perintah copy telah selesai dengan sukses.

Itu berarti bahwa beberapa file yang disalin berhasil, tapi saya tidak tahu yang mana atau berapa banyak. Jadi saya mulai menyalin sub-folder dari Sumber ke Tujuan (kumpulan yang lebih kecil) dan menghapusnya dari Sumber ketika mereka berhasil disalin.

Saya akhirnya tidak bisa menyelesaikan proses itu dalam satu duduk, dan saya kehilangan "tempat" saya

Jadi sekarang saya pergi dengan dua set data yang tidak lengkap. Sumber mungkin memiliki beberapa file / folder yang sudah ada di Tujuan, tetapi tidak semuanya telah disalin.

Beberapa folder mungkin telah disalin sebagian tetapi tidak semua subfoldernya, dll.

Saya mencoba mencari cara terbaik untuk memindahkan sisa Sumber ke Tujuan sambil meminimalkan duplikasi. Kita berbicara tentang banyak data di sini (Sumber adalah 420,72 GB dalam 398.127 item, dan Tujuan adalah 298,84 GB dan 390.149 item) jadi saya jelas harus mencoba untuk mengotomatisasi ini entah bagaimana . Saya tidak yakin bagaimana caranya.

Saya sudah berpikir tentang gcp[GNU cp] dengan --update --archiveatau dittoatau rsyncatau Chronosync tapi aku hanya tidak yakin apa pilihan terbaik adalah dan pengaturan apa yang harus saya gunakan untuk program mana akan direkomendasikan (yang ingin saya --archivedengan gcp? Bendera Apa yang akan saya gunakan dengan dittoatau rsync?)

TJ Luoma
sumber
Perangkat lunak ini luar biasa: bombich.com (Carbon Copy Cloner). Atasi semua masalah Anda.
Kassym Dorsel
CCC atau SuperDuper hanya akan membantu saya menduplikasi apa yang saya miliki, bukan? Saya harus menggabungkan mereka terlebih dahulu.
TJ Luoma
Itu bisa bergabung. Anda perlu mengatur sendiri pengaturannya. yaitu menyesuaikan pengaturan ini / pengaturan lanjutan
Kassym Dorsel
Ah ... saya tidak tahu itu. Pasti akan memeriksanya.
TJ Luoma

Jawaban:

15

Anda dapat membuka Terminal dan menggunakan salah satu dari yang berikut ( rsync mungkin akan menjadi yang tepat bagi Anda jika Anda menginginkan sesuatu yang tidak akan hilang sepenuhnya jika Anda menghentikan prosesnya ):

Cara UNIX standar

cp -R -v source/. destination

Cara UNIX culun (restartable)

rsync -vaEW source/ destination

Cara "mudah" OSX

ditto -V source destination

Sumber


sumber
1
Bukankah perintah 'cp' itu merusak soft-link? Misalnya, aplikasi Mac terkadang menggunakan tautan di dalam bungkus .app. (Tautan selalu merupakan hal besar yang tidak diketahui oleh saya ketika mencoba melakukan ini.) Poin bagus tentang rsync, itu mungkin rencana terbaik karena (dengan begitu banyak data) kemungkinan gangguan adalah signifikan.
TJ Luoma
1

Jika Anda menggunakan FileMerge dari Alat Pengembang pada dua pohon direktori, Anda akan dapat melihat file mana yang telah disalin karena akan membuat perbedaan di antara mereka dan menunjukkan perbedaan.

Kalau tidak, rsyncmungkin sedikit lebih otomatis seperti yang disebutkan di atas oleh cksum.

SJT
sumber