Ich habe eine größere Musiksammlung und da sind einige Duplikate drin. Gibt es eine Möglichkeit, doppelte Dateien zu finden? Zumindest, indem Sie einen Hash durchführen und sehen, ob zwei Dateien den gleichen Hash haben.
Bonuspunkte für das Finden von Dateien mit dem gleichen Namen abgesehen von der Erweiterung - ich denke, ich habe einige Songs mit mp3- und ogg-Formatversionen.
Ich bin glücklich, die Befehlszeile zu verwenden, wenn das der einfachste Weg ist.
ich benutze fdupes
dafür. Es ist ein Kommandozeilenprogramm welches mit den Repositories installiert werden kann sudo apt install fdupes
. Du kannst es so nennen fdupes -r /dir/ect/ory
und es wird eine Liste von Betrogenen ausdrucken. fdupes hat auch eine einfache Homepage und ein Wikipedia-Artikel, die einige weitere Programme auflistet.
FSlint hat eine GUI und einige andere Funktionen. Die Erklärung des Duplikatprüfalgorithmus aus deren FAQ:
1. exclude files with unique lengths
2. handle files that are hardlinked to each other
3. exclude files with unique md5(first_4k(file))
4. exclude files with unique md5(whole file)
5. exclude files with unique sha1(whole file) (in case of md5 collisions).
Liste von programs/scripts/bash-solutions
, die Duplikate finden und unterlaufen können nix
:
- Dupedit: Vergleicht viele Dateien gleichzeitig ohne Prüfsummen. Vermeidet den Vergleich von Dateien mit sich selbst, wenn mehrere Pfade auf dieselbe Datei verweisen.
- dipmerge: läuft auf verschiedenen Plattformen (Win32 / 64 mit Cygwin, * nix, Linux etc.)
- dupseek: Perl mit optimiertem Algorithmus zur Reduzierung von Lesevorgängen.
- fdf: Perl / c basiert und läuft über die meisten Plattformen (Win32, * nix und wahrscheinlich andere). Verwendet MD5, SHA1 und andere Prüfsummenalgorithmen
- Freigaben: Shell-Skript, das die von Ihnen angegebenen Verzeichnisse durchsucht. Wenn es zwei identische Dateien findet, verbindet es sie fest miteinander. Jetzt sind die zwei oder mehr Dateien immer noch in ihren jeweiligen Verzeichnissen vorhanden, aber nur eine Kopie der Daten ist auf der Festplatte gespeichert. Beide Verzeichniseinträge verweisen auf dieselben Datenblöcke.
- fslint: hat Befehlszeilenschnittstelle und GUI.
- Litzen: Reines Python-Deduplizierungs-Befehlszeilentool und Bibliothek mit MD5-Prüfsummen und einem neuartigen Byte-Vergleichsalgorithmus. (Linux, Mac OS X, * nix, Windows)
- liten2: Eine neue Version des ursprünglichen Liten, immer noch ein Kommandozeilenwerkzeug, aber mit einem schnelleren interaktiven Modus mit SHA-1 Prüfsummen (Linux, Mac OS X, * nix)
- rdfind: Eine der wenigen, die Duplikate basierend auf der Reihenfolge der Eingabeparameter (zu scannende Verzeichnisse) einordnen, um nicht in "ursprünglichen / bekannten" Quellen zu löschen (wenn mehrere Verzeichnisse angegeben sind). Verwendet MD5 oder SHA1.
- rmlint: Schneller Finder mit Kommandozeilen-Interface und vielen Optionen um auch andere Lint zu finden (benutzt MD5)
- ua: Unix / Linux Kommandozeilenwerkzeug, entworfen um mit find (und ähnlichem) zu arbeiten.
- Findrepe: kostenloses Java-basiertes Kommandozeilen-Tool für die effiziente Suche nach doppelten Dateien, es kann in Zips und Jars (GNU / Linux, Mac OS X, * nix, Windows) gesucht werden
- fdupe: ein kleines in Perl geschriebenes Skript. Schnelles und effizientes Arbeiten.1
- ssdeepIdentifizieren Sie fast identische Dateien mit Context Triggered Piecewise Hashing
Wenn Ihre Deduplizierungsaufgabe musikbezogen ist, führen Sie zunächst die Picard Anwendung, um Ihre Musik korrekt zu identifizieren und zu markieren (so dass Sie .mp3 / .ogg Dateien finden, selbst wenn ihre Namen falsch sind). Beachten Sie, dass Picard auch als Ubuntu-Paket verfügbar ist.
Das getan, basierend auf der musicip_puid
Tag können Sie alle Ihre doppelten Lieder leicht finden.
Ein anderes Skript, das diese Aufgabe erledigt, ist rmdupe. Von der Seite des Autors:
rmdupe verwendet Standard-Linux-Befehle, um in bestimmten Ordnern nach doppelten Dateien zu suchen, unabhängig vom Dateinamen oder der Erweiterung. Bevor doppelte Kandidaten entfernt werden, werden sie Byte für Byte verglichen. rmdupe kann auch Duplikate gegen einen oder mehrere Referenzordner prüfen, Dateien löschen, statt sie zu entfernen, einen benutzerdefinierten Befehl zum Entfernen zulassen und die Suche auf Dateien mit der angegebenen Größe beschränken. rmdupe enthält einen Simulationsmodus, der angibt, was für einen bestimmten Befehl ausgeführt wird, ohne Dateien tatsächlich zu entfernen.
Hast du es versucht
finddup
oder
finddup -l
Ich denke, es funktioniert gut.
Für musikbezogene Dublettenidentifikation und - löschung Picard und Jaikoz von http://musicbrainz.org/ ist die beste Lösung. Jaikoz Ich glaube, deine Musik wird automatisch anhand der Daten der Songdatei markiert. Sie brauchen nicht einmal den Namen des Songs, um den Song zu identifizieren und ihm alle Metadaten zuzuweisen. Die kostenlose Version kann zwar nur eine begrenzte Anzahl von Songs in einem Durchgang markieren, aber Sie können sie beliebig oft ausführen.