Hallo PC-Kenner,
über die Jahre haben sich bei manuellen Backups von verschiedenen
Rechnern viele Duplikate angesammelt. Z.B. kam es auch schon vor, dass
ein früheres Backup noch einmal vollständig als Kopie in einem späteren
Backup auftauchte. Oder ein Backup enthält alle Fotos bis 2013, ein
anderes Backup alle diese Fotos und zusätzlich alle Fotos bis Feb. 2016.
Wer wie ich ohne richtige Backuplösung einfach gelegentlich alle
wichtigen Dateien auf eine zweite Platte kopiert, kennt wahrscheinlich
das Problem.
Meine Frage: gibt es eine Software, die dabei hilft, Duplikate zu
finden, dabei auch ganze Ordner zu erkennen, die vollständig woanders
noch einmal vorhanden sind (oder mit minimalen Änderungen, falls z.B.
mal ein Bild geöffnet wurde, und um 90° rotiert wieder gespeichert.)?
Das ganze sollte übersichtlich dargestellt werden, z.B.
"/backup/20131220 ist zu 85% identisch mit
/backup/20160229/backups/komplett/20131220
/backup/20131220/Photos ist zu 99.8% identisch mit
/backup/20160229/backups/Bilder/20131220/Photos..."
Es reicht nicht, einfach Duplikate durch Links zu ersetzen oder zu
löschen, da ich manuell wieder eine sinnvolle Struktur herstellen möchte
und nicht dieselben Dateien an vielen Orten finden möchte, wenn auch als
Links.
Eine Lösung für Linux wäre praktisch, Windows geht zur Not aber auch.
Jan
Daniel A. schrieb:> path=.>> find "$path" -type f -exec md5sum {} \; > /tmp/md5_files>> grep -o '^[^ ]*' /tmp/md5_files | sort | uniq -d |> while IFS='' read hash> do grep ^$hash /tmp/md5_files | sed 's/^[^ ]* *//'> done
Da bekommst Du eine Liste von Dateien, aber ohne die Info welche davon
untereinander gleich sind.
Einfacher ist es so:
find . -type f -exec sha256sum {} \; > /tmp/shasums
awk '{print $1}' /tmp/shasums | sort | uniq -d > /tmp/shadupes
grep -f /tmp/shadupes /tmp/shasums | sort
Danke für die Tips. Leider arbeiten alle nur auf Dateiebene und erkennen
nicht, ob ein Ordner vollständig oder mit minimalen Änderungen in einem
anderen dupliziert ist.
Was mir an anti-twin gefällt, ist die Bilder-Ähnlichkeitssuche. Gibt es
so etwas als Kommandozeilentool auch unter Linux? Dann könnte ich mir
selbst den Duplikate-Report stricken, wie ich ihn brauche, und dabei
auch Ordner-Hierarchien vergleichen.
Falls ihr sonst noch Tips habt, die das beschriebene leisten, nehme ich
sie gerne entgegen. Duplikate durch Hardlinks ersetzen und nur Datei mit
Datei vergleichen ohne Ähnlichkeiten zwischen Ordnern zu erkennen ist
NICHT was ich suche.
Jan
>ob ein Ordner vollständig oder mit minimalen Änderungen
Aus dem obigen Output die zweite Spalte durch dirname schicken und dann
durch uniq.
>Bilder-Ähnlichkeitssuche
Guck mal bei ImageMagick nach PHASH
Bob schrieb:>>ob ein Ordner vollständig oder mit minimalen Änderungen> Aus dem obigen Output die zweite Spalte durch dirname schicken und dann> durch uniq.
Lieber Bob,
ich habe erkannt, dass du ganz hervorragend kurze Shellskripte zu jedem,
aber auch wirklich jedem noch so komplizierten Problem erstellen kannst.
Nur leider lösen sie nicht das gestellte Problem, sondern ein anderes,
welches du dir ausdenkst, oder genauer gesagt, welches zufällig das
Problem ist, welches durch dein Skript gelöst wird, denn offenbar denkst
du überhaupt nicht nach.
Es hilft überhaupt nichts, wenn ich jeden Ordner kenne, in dem eine
duplizierte Datei liegt. Ich möchte Ordner angezeigt bekommen, die
nahezu vollständig woanders dupliziert sind. Und nein, ich möchte dazu
kein weiteres Skript von dir, ich frage lediglich, ob es dazu schon
fertige Lösungen gibt.
Jan
Bedenkt bitte auch, daß eine doppelte Datei "irgendwas.txt" verschiedene
RECHTE an verschiedenen Orten haben könnte (obwohl sie den selben Inhalt
besitzt).
Eine eigene Frage?
Dieser Thread ist über 10 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.