Saya ingin membuat daftar file yang memiliki:
- Nama yang sama
- Konten berbeda
dalam direktori (termasuk semua direktori dan konten anak-anak).
Bagaimana melakukan? Bash, perl, semuanya baik-baik saja.
Jadi, dua file dengan nama dan konten yang sama tidak boleh muncul.
Jawaban:
Perbarui: memperbaiki kesalahan ketik pada skrip: diubah
print $NF
menjadiprint $3
; juga merapikan segalanya, dan menambahkan beberapa komentar.Dengan asumsi nama file tidak mengandung
\n
, yang berikut ini mencetak daftar yang diurutkan yang rusak (seperti dalam: bagian kontrol rusak ) di unikfile name
, unikmd5sum
, dan menunjukkan grup jalur file yang sesuai.Output hanya menampilkan nama file dengan banyak
md5
sOutput menampilkan semua file dengan nama yang sama.
sumber
Ini skrip Perl. Jalankan di direktori di bagian atas pohon yang ingin Anda cari. Script tergantung pada
find
danmd5
, tetapi yang terakhir dapat diganti dengansha1
,sum
atau program hashing file lain yang menerima input pada stdin dan menghasilkan hash pada stdout.sumber
finddup alat ini juga dapat membantu Anda dalam mendata file dengan nama atau konten yang sama ..
sumber
Bagi mereka yang ingin melihat hanya daftar nama file, di sini adalah bagian yang relevan dari Peter.O 's jawabannya :
} '
Saya tidak perlu md5sums karena saya gunakan
fslint-gui
sebelum skrip untuk menghapus semua duplikat.sumber