Daten Vergleich

Diskutiere Daten Vergleich im Shell-Skripte Forum im Bereich Programmieren unter Linux/Unix; 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...

  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. #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
     
  3. 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 ;)
     
  4. #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 ?
     
  5. 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
     
  6. 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
     
  7. #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.
     
  8. 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!!!
     
  9. #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 ;-)
     
  10. 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
     
  11. #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?
     
  12. 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
     
  13. 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
     
  14. 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
     
  15. #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. Daten für eine Homepage optimieren und verarbeiten?!

    Daten für eine Homepage optimieren und verarbeiten?!: Hi Ihr wisst ja sicher es gibt viele offene Daten die von der Regierung kostenlos zur Verfügung gestellt werden darunter auch "echt zeit daten"....
  4. Daten Convertieren und auf einen Server schieben?

    Daten Convertieren und auf einen Server schieben?: Hi Ich habe ein rriieesseennn Problem. Ja ja mit Windows gehts ned ich weiss.... Es geht darum auf meinen Web CMS möchte ich "echtzeitdaten"...
  5. Python Softwareentwickler (Hintergrundentwicklung und Datenanalyse)

    Python Softwareentwickler (Hintergrundentwicklung und Datenanalyse): Stelle : Software-Entwickler Anzahl : 3 Standort : Manila(Die Philippinen) Dezhong Investment LTD. Unser internationales...