Beiträge von chiaki

    öö ui
    ganz schön grosse anforderungen

    ---------------------------
    nInfoSpace - Fehler
    ---------------------------
    Bei der Suche bzw. der Auswertung der Suchergebnisse ist ein Fehler aufgetreten. Möglicherweise ist Ihre Internetverbindung fehlerhaft, unterbrochen oder zu langsam oder das eingegebene Thema ist zu speziell und es können nicht genügend Informationen gefunden werden.


    Möchten Sie sich genauere Informationen anzeigen lassen?
    ---------------------------
    Ja Nein
    ---------------------------


    win 7 x64, net 3.nochwas glaub ich
    suchbegriff war euda

    da gandro sowas ja momentan sucht, und es schon vorschläge gibt :)
    mach ich maln extra thread draus:

    so sieht momentan meine (auf die schnelle gemachte) methode aus:

    datenbank erstellen:
    sqlite test1.db "create table liste ( name text, hash text, size int)"

    checkeuda.sh [Pfad] [Datenbankname]

    Bash
    #!/bin/bash
    #$1 = Pfad
    #$2 = Datenbank
    
    
    find $1 -type f -exec ./sqleuda.sh {} $2 ';'

    sqleuda.sh [Datenbank] [Datei]

    Bash
    #!/bin/bash
    
    
    HASH=$(md5sum $1| awk '{print $1}')
    NAME=$1
    SIZE=$(stat -c %s $1)
    echo $NAME, $SIZE, $HASH
    sqlite $2 "insert into liste (name, hash, size) values ( \"$NAME\", \"$HASH\", \"$SIZE\")"

    um die doppelte dateien anzuzeigen (geordnet nach hash) + befehl in xargs (wenn man möchte ):
    doppeltdatei.sh [datenbank]

    Bash
    #!/bin/bash
    #$1 datenbankname
    sqlite $1 select * from liste INNER JOIN (select *, count(hash) as anzahl from liste group by hash having ( count(hash) > 1)) group by liste.hash;" 
    
    
    # select liste.name from liste INNER JOIN (select *, count(hash) as anzahl from liste group by hash having ( count(hash) > 1)) group by liste.hash;" | xargs -i file {}

    checkeuda.sh /home/ test1.db

    und dann doppeltdatei.sh test1.db
    funktioniert bei mir :)
    kann man sicherlich noch verbessern, da es in bash nich gerade das schnellste ist, ausserdem müsste es kein problem sein zwei datenbanken zu vergleichen wenn man den den sqlbefehl etwas verändert (wäre eigentlich sinnvoller ne neue tabelle zu erstellen statt datenbank)

    Zitat von oreissig

    gleiche dateien in unterschiedlichen pfaden?
    hm meine erste idee wäre jetzt von allen files ne prüfsumme erstellen lassen und dann schauen, welche prüfsumme (und die datei dazu) nur in einem davon existiert
    hab ich was übersehen, oder ist das das, was du suchst?

    mein kleines bashscript mit sqlite funktioniert auf diese weise ;)
    ist nur leider nicht wirklich optimiert, aber der PROOF OF CONCEPT geht
    ich überleg ob ich nich daraus ne eigene suchfunktion bastel ohne checksumme, weil dieses ganzen desktop indexierungkram funktioniert nicht wirklich so wie ich will