Zatrebalo mi programče koje će pronaći sve iste fajlove rekurzivno unutar direktorijuma, te ih lepo obrisati, da ih ne bih ja morao tražiti ručno. Pa sam napisao ovaj programčić koji to radi sasvim elegantno.
Ukoliko milslite da nemate duplih fajlova na računaru, pogledajte /usr/share/doc i unutar njega ima mnogo istih fajlova koji se zovu COPYING i svi sadrže isti tekst za GPLv2.
E, ovaj program će da reši takve situacije.
Kako radi? Pa, program rekurzivno pokupi informacije o svim fajlovima. Ukoliko su veličine iste, dobra je šansa da je u pitanju isti fajl. Onda se vrši provera hash-a preko md5 algoritma (za ovo se koristi kod iz OpenSSL-a, nema potrebe izmišljati toplu vodu u slobodnom svetu) i ako se i md5 slaže, jedan od fajlova će biti obrisan. Napominjem, ime fajla ne igra nikakvu ulogu, samo veličina i md5 vrednost.
Kako se koristi? Evo kako se ovaj program poziva da sredi /usr/share/doc:
dufi -r -d -f /usr/share/doc
Da objasnim opcije:
-r (rekurzivna pretraga, ukoliko nema paramertra -r, proveriće se samo fajlovi koji se nalaze u direktorijumu, ne i oni ispod njega)
-d (ukoliko dupli fajlovi budu pronađeni, biće obrisani)
-f (specifikacija početnog direktorijuma, inače će se pretraživati trenutni)
Ukoliko vam treba ovaj program, prezmite ga ovde.
Instalacija je jednostavna:
make
make install