Saya mencoba menemukan cara untuk memeriksa di dalam direktori tertentu untuk file duplikat (bahkan dengan nama yang berbeda) dan menggantinya dengan symlink yang menunjuk pada kejadian pertama. Saya sudah mencoba fdupes
tetapi hanya mencantumkan duplikat itu.
Itulah konteksnya: Saya menyesuaikan tema ikon sesuai dengan keinginan saya, dan saya telah menemukan banyak ikon, bahkan jika mereka memiliki nama dan lokasi berbeda di dalam folder induknya, dan digunakan untuk tujuan yang berbeda, pada dasarnya sama saja gambar. Karena menerapkan modifikasi yang sama dua puluh atau tiga puluh kali berlebihan ketika hanya satu yang benar-benar diperlukan, saya ingin menyimpan satu gambar dan menghubungkan semua gambar lainnya.
Sebagai contoh, jika saya menjalankan fdupes -r ./
di dalam direktori testdir
, itu mungkin kembali kepada saya hasil berikut:
./file1.png
./file2.png
./subdir1/anotherfile.png
./subdir1/subdir2/yetanotherfile.png
Dengan hasil ini, saya hanya ingin menyimpan file file1.png
, menghapus semua yang lain dan menggantinya dengan symlink yang menunjuk ke sana, sambil mempertahankan semua nama file asli. Jadi file2.png
akan mempertahankan namanya, tetapi akan menjadi tautan untuk file1.png
bukannya menjadi duplikat.
Tautan tersebut tidak boleh mengarah ke jalur absolut, tetapi harus relatif terhadap testdir
direktori induk ; yaitu yetanotherfile.png
akan menunjuk ke ../../file1.png
, bukan ke/home/testuser/.icons/testdir/file1.png
Saya tertarik pada solusi yang melibatkan GUI dan CLI. Itu tidak wajib untuk menggunakan fdupes
saya telah mengutipnya karena ini adalah alat yang saya tahu, tapi saya terbuka untuk solusi yang menggunakan alat lain juga.
Saya cukup yakin bahwa skrip bash untuk menangani semua ini seharusnya tidak terlalu sulit untuk dibuat, tetapi saya tidak cukup ahli untuk mengetahui cara menulisnya sendiri.
v1.51
(Ubuntu 14.04.2 LTS).