Zum Inhalt springen

Fdupes

Aus Foxwiki

fdupes ist ein Programm zum Identifizieren doppelt vorhandener Dateien im der angegeben Verzeichnis

Beschreibung

  • fdupes durchsucht vorgegebene Verzeichnisse und sucht Dateien mit gleichen Hash-Wert.
  • Werden Dateien mit gleichen Hash-Wert gefunden, werden diese noch bitweise mit einander verglichen.
  • fdupes ist in den Debian-Repositories vorhanden und kann mit aptitude install fdupes installiert werden.

Verwendung

$ fdupes [Optionen] VERZEICHNIS...

Anwendungen

$ fdupes  -rHdf /tmp/bsi/
$ fdupes -rHdfN /media/daten/kurse/

Um Duplikate zu finden, müssen Sie nur:

$ fdupes /path/to/some/directory

Dieser Befehl sucht nur im Verzeichnis, das als Argument angegeben wurde, und druckt die Liste der doppelten Dateien aus (falls vorhanden). Wenn Sie auch in Unterverzeichnisse suchen, müssen Sie die Option "-r" hinzufügen, die für "rekursiv" steht.

Und was, wenn Sie die Größe von Dateien sehen möchten?

$ fdupes -S /path/to/some/directory

Sie können mehr als ein Verzeichnis angeben:

$ fdupes /path/to/first/directory /path/to/second/directory

und so weiter.

Wenn Sie alle Duplikate löschen wollen

$ fdupes -d /path/to/directory

Dadurch wird eine Kopie beibehalten und alles andere gelöscht.

Optionen

unix gnu Beschreibung
-r --recurse für jedes angegebene Verzeichnis folge den Unterverzeichnissen im Inneren angetroffen
-R --recurse für jedes nach dieser Option angegebene Verzeichnis folgen darin gefundene Unterverzeichnisse (beachten Sie das ':' at am Ende der Option, Manpage für weitere Details)
-s --symlinks folgen Symlinks
-H --hardlinks normalerweise, wenn zwei oder mehr Dateien auf dieselbe verweisen Plattenbereich werden sie als Nicht-Duplikate behandelt; Diese Option wird dieses Verhalten ändern
-G --minsize=SIZE berücksichtigt nur Dateien größer oder gleich SIZE in Bytes
-L --maxsize=SIZE berücksichtigt nur Dateien kleiner oder gleich SIZE in Bytes
-n --noempty schließt Dateien der Länge null von der Berücksichtigung aus
-A --nohidden schließt versteckte Dateien von der Betrachtung aus
-f --omitfirst lässt die erste Datei in jedem Satz von Übereinstimmungen aus
-S --size Größe der doppelten Dateien anzeigen
-t --time zeigt die Änderungszeit doppelter Dateien an
-m --summarize Duplikatinformationen zusammenfassen
-q --quiet Fortschrittsanzeige ausblenden
-d --delete fordert den Benutzer auf, Dateien aufzubewahren und alle zu löschen Andere; wichtig: unter besonderen Umständen, Daten können verloren gehen, wenn diese Option zusammen verwendet wird mit -s oder --symlinks oder bei Angabe von a bestimmtes Verzeichnis mehr als einmal; beziehen sich auf die fdupes-Dokumentation für zusätzliche Informationen
-P --plain with --delete, zeilenbasierte Eingabeaufforderung verwenden (wie bei älteren Versionen von fdupes) statt Bildschirmmodus-Schnittstelle
-N --noprompt zusammen mit --delete, bewahrt die erste Datei in jeden Satz Duplikate und löschen Sie den Rest ohne den Benutzer auffordern
-I --Sofort lösche Duplikate, wenn sie angetroffen werden, ohne Gruppieren in Sätze; impliziert --noprompt
-p --permissions berücksichtigt keine Dateien mit unterschiedlichen Besitzern/Gruppen oder Berechtigungsbits als Duplikate
-o --order=BY Auswahl der Sortierreihenfolge für die Ausgabe und das Löschen; nach Datei Änderungszeit (BY='time'; Standard), Status Zeit ändern (BY='ctime') oder Dateiname (BY='name')
-i --Umkehren der umgekehrten Reihenfolge beim Sortieren
-l --log=LOGFILE Löschoptionen für Protokolldateien in LOGFILE
-v --version fdupes-Version anzeigen
-h --help zeigt diese Hilfenachricht an

Links

Intern

Weblinks

  1. https://github.com/adrianlopezroche/fdupes
  2. https://alternativeto.net/software/fdupes/

tmp

Anmerkungen

Sofern nicht -1 oder --sameline angegeben ist, werden doppelte Dateien aufgelistet in Gruppen zusammengefasst, wobei jede Datei in einer eigenen Zeile angezeigt wird.

  • Der Gruppen werden dann durch Leerzeilen voneinander getrennt.
  • Wenn -1 oder --sameline angegeben ist, werden Leerzeichen und umgekehrte Schrägstriche (\) in einem Dateinamen erscheinen, wird ein umgekehrter Schrägstrich vorangestellt.
  • Für Beispiel wird "mit Leerzeichen" zu "mit\ Leerzeichen".

Bei Verwendung von -d oder --delete ist darauf zu achten, dass Sie sich gegen versehentlicher Datenverlust.

  • Während keine Informationen sofort verfügbar sind verloren, die Verwendung dieser Option zusammen mit -s oder --symlink kann dazu führen, dass zu verwirrenden Informationen, die dem Benutzer angezeigt werden, wenn er dazu aufgefordert wird um Dateien aufzubewahren.
  • Insbesondere könnte ein Benutzer versehentlich Behalten Sie einen symbolischen Link bei, während Sie die Datei löschen, auf die er verweist.
  • Ein ähnliches Problem tritt auf, wenn ein bestimmtes Verzeichnis mehr als . angegeben wird Einmal.
  • Alle Dateien in diesem Verzeichnis werden als ihre eigenen aufgelistet Duplikate, die zu Datenverlust führen, sollte ein Benutzer eine Datei aufbewahren ohne sein "Duplikat" (die Datei selbst!).

Gefahr von Hardlinks

  • Hardlinks verweisen immer auf die gleiche Datei.
  • Es ist somit egal von welchen Verzeichnis man auf die Datei zugreift, Änderungen an der Datei sind immer für alle Links gültig.
  • Man sollte vorsichtig sein, wann man Hardlinks einsetzt.
  • Wenn man eine Musiksammlung hat, in denen gleiche Musikstücke (gleich in den Bits!) mehrfach vorhanden sind weil diese z.B.: auf mehreren Sampler-CD´s angeboten werden, kann man Hardlinks durchaus verwenden um Fesplattenplatz zu sparen.
  • Gleiches Gilt z.B.: auch für Fotosammlungen.
  • In beiden Fällen würde man ein Musikfile oder Bild nicht ändern oder, wenn man es ändert, unter einen neuen Namen abspeichern.
  • Problematisch wird es, wenn man mehrere Stände von Projekt-Dateien abspeichert, um eine Histoire eines Projektes zu haben.
  • Zwar würden auch hier alle doppelten Dateien verlinkt, aber es kann vorkammen, dass man eine solche Datei in einer aktuellen Projekt-Version ändert.
  • In diesen Fall würde diese Datei aber auch in allen vorherig abgespeichterten Versionen geändert.
  • Somit wäre zuvor abgespeicherten Projekt-Stände verfälscht, da sie nicht dem ursprünglichen Stand entsprechen.