Hi Joachim! On Mi, 07 Apr 2010, Joachim H. wrote:
Hallo Christian,
Am 07.04.2010 14:47, schrieb Christian Brabandt:
Hi Joachim!
On Mi, 07 Apr 2010, Joachim H. wrote:
Wie mach ich die Überprüfung sinnvoll? Für jede Datei einen Hash errechnen und diese vergleichen? Gibt es schon fertige Lösungen, die ich verwenden kann?
diff(1), cmp(1)
Die Tools kenne ich. Mein Problem ist nicht das Vergleichen von zwei Dateien sondern von 47!
Ist nur eines anders oder gibt es drei oder vier verschiedene Versionen?
Um alle mit diff bzw. cmp gegenseitig zu prüfen, bräuchte ich mit einem dummi-Ansatz 47+46+45... Vergleiche. Das wären so 1104! Geht natürlich auch intelligenter, doch bedarf das der Reanimierung längst tot geglaubter mathematischer Instinkte bei mir.
Klar. Und wo ist das Problem? Bei der Anzahl halte ich das nicht für ein Problem, zumal es kleine Dateien sind: Minimalbeispiel: find . -type f -exec bash -c ' for file; do for df in /tmp/dest/*; do cmp -s -- "$file" "$df" && echo "$file und $df sind gleich" done done ' bash-find {} +
Deshalb die Idee, Hash-Codes zu berechnen. Dann habe ich eine Liste mit Codes, die ich einfach sortieren und zählen kann.
Dann nimm halt md5sum oder sha1sum. Und dann mit awk oder Perl die Hashes berechnen und hinterher vergleichen. Dürfte auch kein Problem sein. Mit freundlichen Grüßen Christian -- Dreiecksverhältnisse machen auch dann Spaß, wenn man von Geometrie keine Ahnung hat. -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org