Frank: Anzeigen des Pfades

Beitrag lesen

Na hoffentlich bekomme ich das hin !
Bisher schaffe ich es nur bis zur ersten Verzeichnisebene. Kann ich ja mal aufschreiben:
Ist der Anfang schonmal richtig ?
Und nochmal zu diesem pwd. Geht das nicht unter Windows ?

print "Nach welcher Zeichenfolge soll gesucht werden ?\n";
$Zeichenfolge = <STDIN>;
print "\nWie heißt das Oberverzeichnis, dass durchsucht werden soll ?\n";
$Oberverzeichnis = <STDIN>;
if($Oberverzeichnis =~ /\n/)
{
chop($Oberverzeichnis);
}
else
{
exit;
}
if($Zeichenfolge =~ /\n/)
{
chop($Zeichenfolge);
}
else
{
exit;
}
opendir (DIR,$Oberverzeichnis) print "Verzeichnis ", $Oberverzeichnis, " gibt es nicht.\n";
while($files = readdir(DIR))
{
if (-d "$Oberverzeichnis/$files" && $files ne ".." && $files ne ".")      ## -d prüft ob es sich bei dem File um ein Verzeichnis handelt ##
{
  push (@Verzeichnisse,$files);
  print @Verzeichnisse
}
else
{
next;
}
}

Wenn Du mir jetzt noch sagst was rekursiv traversierst bedeutet, wäre ich Dir sehr dankbar.
Ich bin doch noch ein Anfänger !   ;-)

"Traversieren" heißt so ungefähr "ablaufen" (alle Knoten des Baums, der Deine Verzeichnishierarchie darstellt).

"Rekursiv" heißt so ungefähr "wiederkehrend" und bedeutet, daß Du für die Verarbeitung eines Unterverzeichnisses prinzipiell dieselbe Logik verwendest wie für die Verarbeitung des Wurzelverzeichnisses, lediglich basierend auf einer anderen Startadresse.
Du rufst also dieselbe Funktion mit einem anderen Parameterwert in sich selbst nochmal auf, falls Du innerhalb eines Verzeichnisses ein anderes Verzeichnis findest.