Portál AbcLinuxu, 30. října 2025 03:29
Řešení dotazu:
U mňa išlo o cca 80 tisíc favikon v jedom adresári, z ktorých bolo treba odstrániť duplicitné; unikátnych bolo nakoniec asi 21 tisíc.
Celé to bolo s kvadratickou zložitosťou, proste sa zobral jeden súbor a diff-ol sa so všetkými ostatnými. Jediná optimalizácia, ktorú som urobil, bolo rozdelenie súborov podľa veľkosti. I tak to bolo desne pomalé, ale keďže sa jednalo o jednorazovú záležitosť, nemalo zmysel to komplikovať optimalizáciami.
Pri audiu bude možno jednoduchšie urobiť deduplikáciu ručne, automatizovať iba identifikáciu duplicít. Ak duplikácie vznikli skopírovaním s toho istého zdroja, stačilo by ísť po menách súborov, ak je pravdepodobné premenovávanie, tak po ich veľkostiach.
find /adresar -type f -exec md5sum {} \;
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.