Andi: Datei/Verzeichnis bei opendir()

Beitrag lesen

Jetzt habe ich es grad ausprobiert! Genau das hab ich gebraucht, damit kann ich weiterarbeiten! so gefällts mir :o) danke noch mals!!

Hey cool,

herzlichen Dank!! :o) dann hab ich gleich mal wieder was zu tun! Ich schreib eigentlich grad bloß an nem CGI-Script, welches mir abhängig vom Inhalt mancher (festgelegter) Verzeichnisse eine Seite mit Auswahlmöglichkeiten ausgibt. Das is eigentlich alles ;o)

aber ich danke schon mal!!!

Cu!!

Hallo,

Aber was muss ich bitte machen, um rauszukriegen, ob es sich bei dem angezeigten Eintrag um eine Datei oder ein Verzeichnis handelt? ich könnts mir maximal mit "stat" vorstellen, aber auch da hät ich nicht so die Ahnung wie ich es anstellen soll.

stat ist eine Variante, allerdings nicht immer die Beste.
Versuche es einmal so:
opendir(DIR,$verzeichnis);
while($filename = readdir(DIR))
  {
  print "$filename ist eine Verzeichnis \n" if(-d "$verzeichnis/$filename");
  }

es gibt eine Reihe solcher Datei-Test-Operatoren, welche findest Du in der Perldokumentation (perldoc -f -X).

Noch zwei Anmerkungen:
1.) readdir liefert Dir den Dateinamen _ohne_ Pfad, Du mußt also, so wie ich es oben gemacht habe, den Pfad noch mit angeben, wenn Du auf die konkrete Datei zugreifen willst.
2.) Es werden uner Unix-, und Unixähnlichen-, Dateisystemen auch die beiden Verzeichnisse '.' und '..' ausgelesen, welche eventuell eine Sonderbehandlung verdienen. Vor allem wenn Du eine rekursive Funktion schreibst, welche einen ganzen Verzeichnisbaum ausliest.

Grüße
  Klaus