Thread Verzeichnispfade als Hash-Key (22 answers)
Opened by Jiep1963 at 2015-11-18 15:04

Gast Achim Pabel
 2015-11-19 10:46
#182980 #182980
Hallo Raubtier,
hallo @all,

> [Raubtier]: was soll das also?

Ich will die Linux-Verzeichnisse scannen, ob sich interne OS-Dateien verändert haben, wie z.B. duch Manipulation von Hackern. Daher "gesamter Pfad" + "Datei Name". Daher auch "/pfad/.../.../Dateiname" + "Md5Sum" der Datei. Ein persitentes Hash auf der HD die im Vergleich zu einer akutellen Hash im Speicher, usw. usw....
Natürlich sind mir bisher noch keine Leerschritte bei Linux-Systemen aufgefallen. Trotzdem will ich diesem Umstand einfach nur berücksichtigen.
Bei meinen eigenen recherchen über Tante Google (+ meinen schlechten Englischkenntnissen) und dem sehr professionellen (und damit schwer zu verstehenen) Beispielen aus meinen deutschen Perl-Büchern bin ich irgendwann zum Schluss gekommen, dass ich im Forum nachfragen muss!

Und wenn ich Deine Aussage jetzt richtig verstehe "Perl ist nicht Shell." dann reicht also:

$MeinHash{ $PfadFileString } = $Md5SumString;

völlig aus, auch dann, wenn der Pfad oder der Dateiname einen Leerschritt enthält. Damit wäre eigentlich Frage Nr. 1 beantwortet wenn ich nicht durch nachfolgende Aussage erneut verunsichert wäre:

> [hlubenow]: Raubtier hatte oben schon geschrieben, daß man Leerzeichen
> in Hash-Keys benutzen kann, wenn man nur Anführungszeichen um den
> String macht.

Demnach müsste ich dann doch wieder

$MeinHash{ "$PfadFileString" } = $Md5SumString;

verwenden.

Gretchenfrage: Welche Aussage ist denn in diesem Fall richtig???

-------

> Was hat die Stringlänge mit alldem zu tun?

Das wäre von mir Frage Nr. 2
Mit meinem schlechten Englisch habe ich auf einer Perl-Seite verstanden, dass man einen Pfad als Hash-Key nicht nutzen soll, weil der zu lang ist. Scheinbar ist noch jemand auf eine ähnliche Idee gekommen.
Allerdings habe ich nirgends anderswo diese Warnung erneut gelesen. Darum frage ich diesbezüglich hier im Forum auch noch mal nach.

Es bringt ja nichts, wenn durch "Zufall" mein Mist irgendwie läuft und keine Fehlermeldung ausspuckt, aber tatsächlich der Kram einfach logisch falsch (und damti für die Katz) ist!
Last edited: 2015-11-19 10:49:31 +0100 (CET)

View full thread Verzeichnispfade als Hash-Key