[Dresden-pm] Frage zum rekursiven Kopieren von Verzeichnissen
Hans-Dietrich Kirmse
hd.kirmse at gmx.de
Fr Dez 12 23:57:26 PST 2014
Hallo,
Am 12.12.2014 um 23:56 schrieb Roberto Schäfer:
> Das prüfen mit "eq" sollte auch schneller sein.
>
> Am 12.12.2014 21:42 schrieb "Aristoteles Pagaltzis" <pagaltzis at gmx.de
> <mailto:pagaltzis at gmx.de>>:
>
> * Martin Probst <ml at megamaddin.org <mailto:ml at megamaddin.org>>
> [2014-12-12 17:55]:
> > da war noch ein Fehler drin - die Zeile
> >
> > > next if($ent =~ m/^\.|\.\.$/);
> >
> > müsste in
> >
> > > next if($ent =~ m/^(?:\.|\.\.)$/);
> >
> > geändert werden. Sorry dafür.
>
> Warum nicht so?
>
> next if $ent =~ m/^\.\.?$/;
>
> Kürzer und klarer, nicht?
Ich sehe mich ja nur als Laie und meine Schüler sind es mit Sicherheit
noch mehr: meine Meinung: kürzer ist es, aber klarer (verständlicher)
ist es aus meiner Sicht nicht.
> Wobei du \z statt $ willst, weil du sonst einen Bug hast.
das verstehe ich eh alles nicht.
> Ich neige ja mittlerweile dazu, es stupide auszuschreiben:
>
> next if $ent eq '.' or $ent eq '..';
das nachgestellte if verwende ich selbst nur in Ausnahmefällen und im
Unterricht mit Sicherheit nicht, also würde das bei mir so aussehen:
# wenn der Eintrag gleich "." oder ".." ist
if ($entry eq '.' or $entry eq '..') {
# dann den nächsten Eintrag
next;
}
Ist aber natürlich dasselbe. Ob etwas schneller ist, macht bei dem
Kopierscript kaum was aus. Und ob z.B. das Script bei unseren 400
Schülern dann vielleicht 10 oder stattdessen 15 Sekunden dauert - damit
muss der Admin einfach leben. Aber ob ich oder wer auch immer bei der
Betreuung des Scripts später Stunden bei der Fehlersuche ver(sch)wende,
das ist ganz gewiss nicht egal. - sowas diskutiere ich natürlich auch
mit meinen Schülern und frage sowas dann in der
Leistungskontrolle/Kursarbeit im 1. Teil ohne Computer ab. ;)
Viele Grüße
Hans-Dietrich
Mehr Informationen über die Mailingliste Dresden-pm