Verzeichnis einlesen in einer Schleife

Von: , Frage gestellt am Mi, 14. Jul 2004

Hallo,

ich versuche mit readdir mehrere Verzeichnisse auszulesen.

readdir vor einer Schleife klappt problemlos. readdir in einer Schleife ergibt keinerlei Ausgabe:

opendir(DIR, "../updates/inhalte");
my @Eintraege = readdir(DIR);
closedir(DIR);
foreach(@Eintraege) {
print "$_ <br>\n";
}


^- klappt

----------------------------------------------------------------------


open(DATEI, "<./inhalt.txt") || die "Datei nicht gefunden";
my @Zeilen = <DATEI>;
close(DATEI);
foreach(@Zeilen) {
if( $_ =~ /$aktuell/) {
my @strSplit = split(/=/, $_);
print @strSplit[2];                #soweit erstmal nicht wichtig! in @strSplit[2] steht nur "/updates/inhalte/00x"
my $strTemp = $_;
my $strTemp2 = "..".@strSplit[2];
opendir(DIR, "$strTemp2") || die "@strSplit[2]: $!";
@strDir  = readdir(DIR);      
closedir(DIR);
foreach(@strDir) {
print "$_";
}
}
}


^- klappt nicht

Wieso? Ich hab auch schon versucht, mit chroot und chdir die Verzeichnisse umzubiegen. Hat aber alles nichts gebracht.

Ein Aufruf der ersten Funktion nach der Schleife gibt auch keine Ausgabe mehr!


Danke und Ciao! Bjoern

2 Antworten zu dieser Frage

  1. Antwort von nach 17 Minuten 0 hilfreich
    Re: Verzeichnis einlesen in einer Schleife

    Hallo,

    ich versuche mit readdir mehrere Verzeichnisse auszulesen.

    readdir vor einer Schleife klappt problemlos. readdir in einer
    Schleife ergibt keinerlei Ausgabe:

    open(DATEI, "<./inhalt.txt") || die "Datei nicht gefunden";
    my @Zeilen = <DATEI>;
    close(DATEI);
    foreach(@Zeilen) {
    if( $_ =~ /$aktuell/) {
    my @strSplit = split(/=/, $_);
    print @strSplit[2];                #soweit erstmal nicht wichtig! in @strSplit[2] steht nur "/updates/inhalte/00x"
    

    aber mit zeilenumbruch am ende, weil du die zeile ja aus dem textfile gelesen hast, nicht?

    • Antwort von nach einem Tag 0 hilfreich
      Re^2: HEUREKA!

      aber mit zeilenumbruch am ende, weil du die zeile ja aus dem
      textfile gelesen hast, nicht?
      JA! Das wars! Schande ueber mein Haupt =;)

      Danke!

      Ciao! Bjoern

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!