Dengan
diff -r
Saya bisa melakukan tugas ini, namun butuh waktu lama karena diff
memeriksa konten file.
Saya ingin sesuatu yang menentukan bahwa dua file adalah sama dalam hal ukurannya, terakhir diubah, dll. Tetapi tidak memeriksa file sedikit demi sedikit (misalnya video membutuhkan waktu sangat lama).
Apakah ada cara lain?
Jawaban yang Diterima:
rsync, secara default, hanya membandingkan metadata file. itu berarti stempel waktu, ukuran, dan atribut. diantara yang lain. tetapi bukan konten file.
rsync -n -a -i --delete source/ target/
penjelasan:
-n
jangan menyalin atau menghapus <– INI PENTING!!1-a
bandingkan semua metadata file seperti stempel waktu dan atribut-i
mencetak satu baris informasi per file--delete
juga melaporkan file yang tidak ada di sumber
catatan:penting untuk menambahkan nama direktori dengan garis miring. ini adalah hal yang rsync.
Anda dapat mempersingkat opsi satu huruf seperti ini
rsync -nai --delete source/ target/
jika Anda juga ingin melihat garis yang dicetak untuk file yang identik, berikan -i
dua kali
rsync -naii --delete source/ target/
contoh keluaran:
*deleting removedfile (file in target but not in source)
.d..t...... ./ (directory with different timestamp)
>f.st...... modifiedfile (file with different size and timestamp)
>f+++++++++ newfile (file in source but not in target)
.f samefile (file that has same metadata. only with -ii)
ingat bahwa rsync hanya membandingkan metadata. itu berarti jika konten file berubah tetapi metadata tetap sama maka rsync akan melaporkan file itu sama. ini adalah skenario yang tidak mungkin. jadi percayalah bahwa ketika metadata sama maka datanya sama, atau Anda harus membandingkan data file sedikit demi sedikit.
bonus:untuk informasi kemajuan lihat di sini:Perkirakan waktu atau pekerjaan yang tersisa untuk diselesaikan untuk rsync?