Datei-Dupletten Finden

Autor

Dienstag, 12. Mai 2009 11:31:38

Hallo,

ich suche ein Programm (am besten CLI), dass mir Datei-Dupletten
im System zeigt.

Dieses Tool sollte am besten nicht bloß nach dem Namen sondern nach dem Inhalt gehen.

Hintergrund ist, dass ich eine Medien-Sammlung bereinigen möchte.

Vielen Dank!

Joachim Lehmann

4 Antworten


Antworten
Datei-Dupletten
Dieter (unangemeldet), Samstag, 16. Mai 2009 11:32:03
Ein/Ausklappen

Ich verwende hierzu das Programm samefile auf der Konsole.
Zu finden unter:
http://www.schweikhardt.net/samefile/

Anwendung mit pipe:
find | samefile
find | samefile > samedatei.txt

Eine andere Möglichkeit bietet md5sum mit find:
find -type f -printf "" -exec md5sum '{}' \;
und dann sortieren nach den md5-Summen. Somit hast Du nur noch ganz wenige Dateien zum ansehen ob diese doppelt sind.



Für Samefile habe ich mir noch einen Batchjob geschrieben zur Unterstützung:

#! /bin/sh
# how to use this:
# first step
# syntax: find /path/ | samefile > filelist.txt
# second step
# your inputfile will now be your created filelist.txt
# syntax: ./chosewhichdelete_samefile.sh inputfile outputfile
# recommendet outputfilemname samefiledeletebatch.sh
# third step
# syntax: ./samefiledeletebatch.sh

ic=1
IFS=$'\t\n'
echo "#! /bin/sh " > $2
for i in $(cat /home/dieterd/tools/samefile/"$1");
do
# echo "# count: " $ic
# put length of file into one variable
if [ $ic = 1 ] ; then
var1=$i
#echo "# " $var1
fi
# put first file name into a variable
if [ $ic = 2 ] ; then
var2=$i
#echo "# " $var2
fi
# put second file name into a variable
if [ $ic = 3 ] ; then
var3=$i
#echo "# " $var3
fi
#if [ $ic = 4 ] ; then
#var4=$i
#echo "# " $var4
#fi
#if [ $ic = 5 ] ; then
#var5=$i
#echo "# " $var5
#fi
#if [ $ic = 6 ] ; then
#var6=$i
#echo "# " $var6
#fi
# increment counter ic with one
ic=$(($ic+1))
# echo "# count: " $ic
# leave out other information
# at the end, ask which to delete

if [ $ic = 7 ] ; then

let m=0

while [ $m = 0 ]
do

echo "# 0: " $var1
echo "# 1: " $var2
echo "# 2: " $var3
ls -l $var2
ls -l $var3
# echo "# 3: " $var4
echo "# which to delete ? (1: first ; 2: second)"

# check if file exists
if [ -e $var2 ]
then
if [ -e $var3 ]
then
read a
else
a="0"
echo "file skipped because least one file is missing "
fi
else
a="0"
echo "file skipped because least one file is missing "
fi

# read a

if [ $a = "m" ] ; then
echo "mplayer file"
mplayer $var2
fi

if [ $a = "v" ] ; then
echo "xv file"
xv $var2
fi

if [ $a = "l1" ] ; then
echo "list dir"
ls $(dirname $var2)
fi

if [ $a = "l2" ] ; then
echo "list dir"
ls $(dirname $var3)
fi

if [ $a = "k1" ] ; then
echo "list dir"
konqueror $(dirname $var2)
fi

if [ $a = "k2" ] ; then
echo "list dir"
konqueror $(dirname $var3)
fi

if [ $a = "k" ] ; then
echo "list dir"
konqueror $(dirname $var2) $(dirname $var3)
fi

# with echo works only if the filename is the same
# if not you kill the file only in the second run
# better will be if you moved files to trash - write your own shell script

if [ $a = "0" ] ; then
echo "skipped these files "
# nothing - skip
let m=1
fi

if [ $a = "q" ] ; then
echo "programm was aborted by user wish "
exit
let m=1
# beenden
fi

if [ $a = "1" ] ; then
echo "rm " \'$var2\' >> $2
# echo "mv " \'$var2\' \'$var3\'
# echo "mv " \'$var2\' \'$var3\' >> $2
# echo "mv " \'$var3\' \'$var2\' >> $2
let m=1
fi

if [ $a = "2" ] ; then
echo "rm " \'$var3\' >> $2
# echo "mv " \'$var3\' \'$var2\'
# echo "mv " \'$var3\' \'$var2\' >> $2
# echo "mv " \'$var2\' \'$var3\' >> $2
let m=1
fi
ic=1

done

fi
done

# change attributes to enable *.sh to run as user
sudo chmod 777 $2



Bewertung: 154 Punkte bei 15 Stimmen.
Den Beitrag bewerten: Gut / Schlecht
-
Re: Datei-Dupletten
Dieter (unangemeldet), Samstag, 16. Mai 2009 11:42:03
Ein/Ausklappen

Das Shellskript ist für KDE geschrieben. Für Gnome oder andere viewer mußt Du entsprechenden Konsolenbefehl in dem Skript ändern.

Der Vergleich mit den MD5 Summen hat einen Vorteil, dass Du dieses Ergebnis (und die vermutlichen Dupletten (der nachteil ist, du mußt die vermeintlichen Dubletten noch vergleichen)) auf einem Stick mitnehmen kannst, falls sich weitere Dateien auf einem anderen Rechner am anderen Ort befinden.


Bewertung: 90 Punkte bei 11 Stimmen.
Den Beitrag bewerten: Gut / Schlecht
Re: Datei-Dupletten
Dieter (unangemeldet), Samstag, 16. Mai 2009 15:06:55
Ein/Ausklappen

find -type f -printf %s"\t"%TY%Tm%Td_%TH%TM"\t" -exec md5sum '{}' \; | sort -k 3 | uniq -D -f 2 -w 32

Bildet von allen Dateien die md5sum und gibt die Mehrfachen aus.




Bewertung: 113 Punkte bei 11 Stimmen.
Den Beitrag bewerten: Gut / Schlecht
fdupes & dupseek
Erwin Eggenberger, Dienstag, 12. Mai 2009 21:47:57
Ein/Ausklappen

Hallo Joachim,

ich habe vor einer Weile mal fdupes und dupseek ausprobiert, beides CLI.
http://premium.caribe.net/~adrian2/fdupes.html
http://www.beautylabs.net/software/dupseek.html

Raten würde ich eher zu dupseek, denn fdupes hat bei mir bei sehr großen Mengen von Dateien kläglich versagt. Hat den ganzen Arbeitspeicher aufgebraucht, bis der OOM Killer eingegriffen hat.

Dupseek hatte damit keine Probleme. Zudem ist der verwendete Algorithmus ein bisschen schneller. Ich hatte aber den Eindruck, dass es Dateien größer als 4GB nicht mag und sich dann aufhängt. Nach verschieben der VirtualBox Images ist es dann aber problemlos durchgelaufen.

Grüße

Erwin


Bewertung: 147 Punkte bei 18 Stimmen.
Den Beitrag bewerten: Gut / Schlecht

Ähnliche Artikel

  • Neue Software
    Im Quartalsrhythmus erscheinen viele Programme in neuer Version. Eine Auswahl stellen wir regelmäßig vor, und auf der Heft-DVD finden Sie die passenden Pakete und Installationshinweise.
  • Verpackungskünstler
    Sparen Sie Platz: Mit einem Archivierungsprogramm fassen Sie mehrere Dateien zu einer einzigen zusammen, und mit einem Komprimierungs-Tool verkleinern Sie das Datenpaket. Wir zeigen, wie Sie zum Verpackungskünstler werden.
  • Musiksammlung verwalten mit Amarok
    Mit seiner großen Anzahl beeindruckender Funktionen rockt der intuitive Mediaplayer Amarok die Party und liefert zugleich den alltäglichen Soundtrack bei der Arbeit.
  • Software
    Im Quartalsrhythmus erscheinen viele Programme in neuer Version. Eine Auswahl stellen wir regelmäßig vor. Auf der Heft-DVD finden Sie die passenden Pakete und Installationshinweise (Teil 2/2).
  • Software
    Im Quartalsrhythmus erscheinen viele Programme in neuer Version. Eine Auswahl stellen wir regelmäßig vor. Auf der Heft-DVD finden Sie die passenden Pakete und Installationshinweise.

Stellenanzeigen

System–Administrator (m/w)
IT-Systemadministrator

Mehr erfahren...
(Vollständige Anzeige auf Linux-Magazin Online)


Senior-System–Administrator (m/w)
IT-Systemadministrator

Mehr erfahren...
(Vollständige Anzeige auf Linux-Magazin Online)

Tipp der Woche

Grammatikprüfung in LibreOffice nachrüsten
Grammatikprüfung in LibreOffice nachrüsten
Tim Schürmann, 24.04.2015 19:36, 0 Kommentare

LibreOffice kommt zwar mit einer deutschen Rechtschreibprüfung und einem guten Thesaurus, eine Grammatikprüfung fehlt jedoch. In ältere 32-Bit-Versionen ...

Aktuelle Fragen

Fernwartung oder wartung im haus
heide marie voigt, 29.06.2015 10:37, 2 Antworten
gerne hätte ich jemanden in Bremen nord, der mir weiter hilft - angebote bitte mit preis HMVoigt
Druckeranschluss DCP-195C
heide marie voigt, 29.06.2015 10:35, 1 Antworten
installiert ist linux ubuntu 15.04 offenbar auch der treiber für den Drucker DCP-195C. Die Konta...
keine arbeitsleiste beim einloggen
heide marie voigt, 27.06.2015 13:31, 0 Antworten
seit der neu-installierung von linux ubuntu 15.04 erscheint die arbeitsleiste rechts oben erst na...
raid platte an linux mint 17.1
andreas schug, 23.06.2015 19:44, 0 Antworten
folgende thematik NAS Iomega Storage Center wird auf einmal nicht mehr im netzwerk erkannt .....
SUSE 13.2 - Probleme mit kmail
kris kelvin, 03.06.2015 13:26, 2 Antworten
Hallo, nach dem Umstieg auf 13.1 hatte ich das Problem, daß kmail extrem langsam reagierte. Nun...

Jetzt auf den Mailinglisten

Re: [EasyLinux-Ubuntu] Opwera_öffnet_Seite_nicht
heiko, 03.07.2015 19:33
Am Freitag, 3. Juli 2015, 10:42:53 schrieb Hartmut Haase: Hallo Hartmut, > > > Man kann aberdas...
Re: [EasyLinux-Ubuntu] [erledigt]_Opwera_öffnet_Seite_nicht
heiko, 03.07.2015 19:28
Am Donnerstag, 2. Juli 2015, 11:01:20 schrieb Hartmut Haase: Hallo Hartmut, > > > Ist denn iced...
Re: [EasyLinux-Ubuntu] QR-Code Generator
Richard Kraut, 03.07.2015 18:58
Am Freitag, den 03.07.2015, 17:25 +0200 schrieb Alexander McLean: > Ich brauche ein Werkzeug, mit dem man...
[EasyLinux-Ubuntu] QR-Code Generator
Alexander McLean, 03.07.2015 17:25
Hallo Liste Ich brauche ein Werkzeug, mit dem man möglichst einfach QR-Codes aus einer Vorlage erstellen u...
Re: [EasyLinux-Ubuntu] Opwera_öffnet_Seite_nicht
Hartmut Haase, 03.07.2015 10:42
Hallo Heiko, > Man kann aberdas Plugin auch konfigurieren. > > http://picpaste.de/Bildschirmfoto...