AW: [Vienna-pm] Problem mit rewinddir

Baier Oliver MAX SD BaierO at spardat.at
Tue Oct 14 12:06:32 CDT 2003


Hallo Wolfgang,

das kann ich so nicht bestaetigen, da ich ja problemlos den
Verzeichnisbaum runterwandern kann und die jeweils richtigen
Unterverzeichnisse bekomme. Auch scheint das anschliessende
rewinddir nicht prinzipiell zu scheitern, da ich meistens
die korrekte Anzahl an darin enthaltenen Dateien angezeigt
bekomme.

Aber irgendwie hast du damit auch recht, weil ich soeben
opendir & Co auf die OO-Variante umgestellt habe
	my $D = DirHandle->new("$dir")...
und alle 13000 Verzeichnisse und 35000 Dateien korrekt
aufgelistet werden.

Was auch immer anders schiefgeht, so klappt's.
Danke fuer den Hinweis!

lg
Oliver


> -----Ursprüngliche Nachricht-----
> Von: LAUN Wolfgang [mailto:wolfgang.laun at alcatel.at]
> Gesendet: Dienstag, 14. Oktober 2003 18:45
> An: Baier Oliver MAX SD; Thomas Klausner
> Cc: Vienna. Pm (E-Mail)
> Betreff: RE: [Vienna-pm] Problem mit rewinddir
> 
> 
> Vielleicht war mein Hinweis nicht deutlich genug: Das Problem
> der nicht gefundenen Files kommt m.E. davon, dass DIR global
> sichtbar ist und im rekursivn Aufruf wieder verwendet wird.
> Dadurch wird DIR mit einem anderen Directory neu eröffne,
> und die Fortsetzung mit rewinddir usw. nach der Rückkehr aus
> dem rekursiven Aufruf liest etwas ganz anderes.
> 
> Jede Rekursionsebene benötigt ihr eigenes Handle DIR. (Darauf wird
> etwa in perlfunc oder perlsub hingewiesen.) Es ist möglich,
> mit local *DIR auf jeder Rekursionsebene ein neues DIR 
> bereitzustellen.
> 
> HTH
> -Wolfgang
>  
> 
> > -----Original Message-----
> > From: Baier Oliver MAX SD [mailto:BaierO at spardat.at]
> > Sent: Tuesday, October 14, 2003 5:11 PM
> > To: Thomas Klausner
> > Cc: Vienna. Pm (E-Mail)
> > Subject: AW: [Vienna-pm] Problem mit rewinddir
> > 
> > 
> > Hi,
> > 
> > kenne File::Find nicht so genau, aber habe gerade gelesen,
> > dass es keine Argumente uebergeben kann und ich deshalb
> > vermutlich ein Problem damit haette, jedes Verzeichnis
> > zu behandeln und je nach Ergebnis a oder b ans naechste
> > Verzeichnis weiterzureichen.
> > 
> > Hast du vielleicht auch eine Alternative zu rewinddir,
> > die performanter ist als closedir&&opendir?
> > 
> > lg
> > Oliver
> > 
> 



More information about the Vienna-pm mailing list