Daten Vergleich

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von freEze, 22.08.2005.

  1. #1 freEze, 22.08.2005
    Zuletzt bearbeitet: 22.08.2005
    freEze

    freEze Jungspund

    Dabei seit:
    22.08.2005
    Beiträge:
    23
    Zustimmungen:
    0
    Ort:
    Berlin
    hallo,
    ich soll ein script schreiben in unix und hab keine ahnung davon.
    das script soll im verzeichnis gleich große daten suchen(doppelte) und die eine dann löschen.

    kann mir jemand helfen??


    hab bisjetzt nur das
    find . -name "*" -exec ls -ld {} \; >ausgabe.txt
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Wolfgang, 27.08.2005
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Was willst du vergleichen, die Inhalte ( Daten) oder die Dateien?
    Wenn du etwas genauer die Aufgabe definieren kannst, kann ich dir eventuell helfen.
    Gruß Wolfgang
     
  4. name

    name Inactive user

    Dabei seit:
    28.08.2004
    Beiträge:
    592
    Zustimmungen:
    0
    Ort:
    Wien->127.0.0.1
    Ich würde dir empfelen: Kauf dir ein Shell Programmierung Buch ;)
     
  5. #4 liquidnight, 27.08.2005
    liquidnight

    liquidnight Routinier

    Dabei seit:
    16.04.2005
    Beiträge:
    430
    Zustimmungen:
    0
    "in unix" ist ziemlich unspezifisch. es könnte sein /bin/sh /bin/bash /usr/bin/perl /usr/bin/python oder sogar /usr/bin/php

    ich würde dafür mal perl oder python empfehlen. bash geht zwar auch, damit bin ich aber net so fit.

    also: bist du auf eine sprache festgelegt ?
     
  6. Xanti

    Xanti Mouse Organist

    Dabei seit:
    05.09.2004
    Beiträge:
    1.855
    Zustimmungen:
    0
    Um keine Wissenschaft draus zu machen, kannst Du Dir md5-Checksummen zu den Files ausrechnen lassen und vergleichen. Eventuell Skript bei dem OS-abhängigen "md5sum"-Befehl anpassen.

    Code:
    #!/usr/bin/perl
    
    use File::Find;
    
    my %files;
    my %find_options = (wanted => \&compare_files, no_chdir => 1);
    find (\%find_options, '.');
    
    ##################
    sub compare_files {
    	if ((-f $_) && (-s $_) && !(-l $_)) {
    		open (MD5SUM, "md5sum \'$_\' |");             # eventuell anpassen
    		my ($md5sum) = split (/\s+/, <MD5SUM>, 0);    # eventuell anpassen
    		close MD5SUM;
    		if ($files{$md5sum}) {
    			unlink $_;
    			print "\t$_ removed\n"
    		} else {
    			$files{$md5sum} = $_
    		}
    	}
    }
    
    Gruss, Phorus
     
  7. freEze

    freEze Jungspund

    Dabei seit:
    22.08.2005
    Beiträge:
    23
    Zustimmungen:
    0
    Ort:
    Berlin
    also bis jetzt hab ich das

    # !/bin/ksh
    find . -name "*" -type f -exec ls -d {} \; | grep -v Gesamt >temp.txt
    while read name
    do
    sumerg=`sum "$name" | awk ' { print $1,$2 } ' `
    groesse=`wc -c "$name" | awk ' { print $1 } ' `
    echo "$groesse $sumerg $name"
    done < temp.txt | sort -nr > ausgabe.txt


    jetzt fehlt nur das er in der ausgabe.txt die ersten beiden spalten vergleicht werden mit anderen werten in der txt. wenn da irgendwo gleiche werte sonst wo stehen soll die eine gelöscht werden.

    vielleicht schafft das ja jemand zu beenden


    vielen dank
     
  8. #7 hijacker, 29.08.2005
    hijacker

    hijacker Akronymleser

    Dabei seit:
    20.02.2005
    Beiträge:
    151
    Zustimmungen:
    0
    Ort:
    Berlin/Münster
    um auch in untergeordneten ordnern doppelt vorhandende dateien aufzuspueren, kannst du auf teilstrings mittels md5sum und uniq pipen:
    Code:
    find -type f -print0 | xargs -0 md5sum |sort |uniq -w 32 -D
    so sparst du den ganzen tmp.txt-muell. die ausgabe kannst du auch in eine datei z.b. mit tee umleiten. von einem automatischen loeschen rate ich ab, es hat schon ab und an seinen sinn, dass einige dateien an mehreren orten vorhanden sind oder die selbe md5sum haben :>

    viel erfolg.
     
  9. freEze

    freEze Jungspund

    Dabei seit:
    22.08.2005
    Beiträge:
    23
    Zustimmungen:
    0
    Ort:
    Berlin
    kannst du mir mal erklären wie ich das jetzt in mein script rein baue??? :hilfe2:

    wäre echt nett von dir!!!
     
  10. #9 hijacker, 29.08.2005
    hijacker

    hijacker Akronymleser

    Dabei seit:
    20.02.2005
    Beiträge:
    151
    Zustimmungen:
    0
    Ort:
    Berlin/Münster
    editor? :devil:

    spass beiseite, warum das rad neu erfinden? schau dir mal hier die nummer 3 an ;-)
     
  11. freEze

    freEze Jungspund

    Dabei seit:
    22.08.2005
    Beiträge:
    23
    Zustimmungen:
    0
    Ort:
    Berlin
    mit dem deldopp script komm ich überhaupt nich klar.

    ich meinte das mit dem rein bauen so das du mal bitte

    die zeile find -type f -print0 | xargs -0 md5sum |sort |uniq -w 32 -D von dir

    in meins irgendwie reinbaust das es funktioniert

    das wäre echt nett
     
  12. #11 hijacker, 29.08.2005
    hijacker

    hijacker Akronymleser

    Dabei seit:
    20.02.2005
    Beiträge:
    151
    Zustimmungen:
    0
    Ort:
    Berlin/Münster
    klar, und was ist dein job?
     
  13. freEze

    freEze Jungspund

    Dabei seit:
    22.08.2005
    Beiträge:
    23
    Zustimmungen:
    0
    Ort:
    Berlin
    kannste das nich schnell machen wenn es einfach ist.

    kennst dich doch damit aus.

    hab schon lange gebraucht, bis ich den text den ich jetzt habe, zusammen gekriegt habe und der auch funktionfähig ist.

    bloß jetzt mit dem das er die ersten 2 spalten nach gleichen werten durchsucht und die vergleich komm ich nich klar
     
  14. tr0nix

    tr0nix der-mit-dem-tux-tanzt

    Dabei seit:
    11.07.2003
    Beiträge:
    1.585
    Zustimmungen:
    0
    Ort:
    Schweiz, Opfikon/Glattbrugg
    Sali Freeze

    Bist du hier, um uns einen Auftrag zu geben oder willst du etwas lernen? Mit zusammenkopieren von Kommandozeilen gehst du nur ein sehr grosses Risiko ein und kannst deine Handlungen/dein Script nicht erklären wenn du es jemandem abgeben musst.

    Wir helfen dir gerne deine Fragen bzgl. Shellscripting zu beantworten, aber viele von uns haben nicht gerade Lust deine Arbeit zu schreiben was ja verständlich sein sollte.

    Gruss
    Joel
     
  15. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  16. freEze

    freEze Jungspund

    Dabei seit:
    22.08.2005
    Beiträge:
    23
    Zustimmungen:
    0
    Ort:
    Berlin
    ich will es ja keinem erklären

    hab doch schon nen anfang vorgegeben

    jetzt müsste nur einer das ende übernehmen
     
  17. #15 Schlaubi_fi.de, 29.08.2005
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    *kopfschüttel*

    Everybody's darling is everybody's asshole
     
Thema:

Daten Vergleich

Die Seite wird geladen...

Daten Vergleich - Ähnliche Themen

  1. Daten vergleichen

    Daten vergleichen: Hallo liebe Community, ich möchte mit ein Shellskript 2 Dateien vergleichen in denen zeilenweise eine Zahl und eine Bezeichnung stehen. Ich...
  2. Daten auslesen und vergleichen

    Daten auslesen und vergleichen: Hi, habe eine Pipe wo ich eine Rehie von Zahlen speichere: 123 234 333 444 654 666 Nun möchte ich diese durch eine IF Abfrage...
  3. Python Softwareentwickler (Hintergrundentwicklung und Datenanalyse)

    Python Softwareentwickler (Hintergrundentwicklung und Datenanalyse): Stelle : Software-Entwickler Anzahl : 3 Standort : Manila(Die Philippinen) Dezhong Investment LTD. Unser internationales...
  4. Neue Vision von KDE: Datenschutz, Freiheit, Privatsphäre

    Neue Vision von KDE: Datenschutz, Freiheit, Privatsphäre: Das KDE-Projekt hat sich eine neue Leitlinie gesetzt. Schon immer war es das Ziel des Projektes, mit seiner Arbeit die Welt ein Stückchen besser...
  5. Debian-Projektleiterwahl mit nur einem Kandidaten

    Debian-Projektleiterwahl mit nur einem Kandidaten: Bei der anstehenden jährlichen Debian-Projektleiterwahl tritt nur ein Kandidat an, der Franzose Mehdi Dogguy. Der amtierende Projektleiter Neil...