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
Das System ist ja nicht schlecht, aber meiner Meinung nach erkennt er mir somit keine doppelt heruntergeladenen Dateien oder später Kopierte. Mir würde es, glaube ich zumindest, reichen, wenn er nach Name und Grösse sortiert. Das Script läuft zur Zeit und ich bin auf das Ergebnis erstmal gespannt . -- Micky's SUSE-LINUX Help-Line Danke und Tschuess