Hi Liste, Ich bin auf der Suche nach einem Script, welches mein komplettes System nach doppelten Dateien durchsucht, habe da aber noch nicht so recht einen Ansatz gefunden. Ich dachte da an eine Kompination von ls, find und grep .. aber wie verbinde ich diese tollen Tools miteinander am besten? Ist das für Euch Script-Programmierer ein Anreiz oder gibt es schon genug Programme für dieses Problem? -- Micky's SUSE-LINUX Help-Line Danke und Tschuess
On Sun, May 18, 2003 at 08:48:41PM +0200, Miklas Neugebauer wrote:
Ich dachte da an eine Kompination von ls, find und grep .. aber wie verbinde ich diese tollen Tools miteinander am besten?
Eine Liste aller Dateien bekommst Du mit find: $ find / -type f -print Wenn Du eine Prüfsumme aller dieser Dateien berechnest, kannst Du Dateien mit identischer Prüfsumme finden: $ find / -type f -print0 | xargs -0 md5sum > ~/md5sum.out $ cat md5sum.out ... 076454af3145ff8a5696e4ac8438e603 /home/kris/Source/php4/ext/gd/libgd/CVS/Entries 156ceba06903a96e3d7bdd942894be8e /home/kris/Source/php4/ext/gd/libgd/gd.c 4ca511b69fd31e5381626c63b0e17a37 /home/kris/Source/php4/ext/gd/libgd/gd.h 43741c4ebce00ebe5db3fd9f7a139232 /home/kris/Source/php4/ext/gd/libgd/gdtables.c 06520728488a268fb375535bc9263cac /home/kris/Source/php4/ext/gd/libgd/gd_gd2.c abd063d03af79b7310e48540ed1e3c31 /home/kris/Source/php4/ext/gd/libgd/gd_png.c 1e45f73a99a21229f9f53273fe330500 /home/kris/Source/php4/ext/gd/libgd/pngtogd2.c 79f0495387dc298dc87360c53febe627 /home/kris/Source/php4/ext/gd/libgd/gddemo.c 9a9337b5f25756ea256b6d753be70733 /home/kris/Source/php4/ext/gd/libgd/xbm.c 0e7695f2607567da683ba747eb1a05be /home/kris/Source/php4/ext/gd/libgd/gd2topng.c d6b03dbb296d2015095ce65374a6bec6 /home/kris/Source/php4/ext/gd/libgd/README ... Indem Du nach Prüfsumme sortierst, und dann auf der Prüfsumme faltest, bekommst Du die gewünschte Information: $ sort md5sum.out | uniq -w32 -D > uniq.out Willst Du jetzt noch nur die Namen der Dateien haben, mußt Du die ersten 35 Zeichen jeder Zeile wegwerfen: $ cut -b35- < uniq.out > cut.out Kristian
participants (2)
-
Kristian Koehntopp
-
Miklas Neugebauer