Hansi: Perl Verzeichnisinhalt auflisten

Beitrag lesen

Hallo Cheatah,

Danke für Deine schnelle Antwort. Es hat funktioniert. Damit dies aber nicht nur eine Dankemeldung bleibt (ist glaube ich nicht so gerne gesehen), hier die kurze umsetzung der Lösung. Vielleicht kann noch jemand anderer davon profitieren.

Einleitung:
Bei der erstellung der temporären GIFs verwende ich GD.pm. Mit dieser Bibliothek erzeuge ich temporäre Images, die dann in der HTML-Seite angezeigt werden. Es muß für jede angezeigte Seite ein neues GIF erstellt werden. Die Namen der Dateien erzeuge ich mit srand() und rand(). Das ergab ursprünglich einen Dateinamen ähnlich wie tmp8736.98472574895.gif. Das Problem welches dabei auftaucht ist, daß das Verzeichnis, in das die Dateien kopiert werden irgendwann mal explodiert. Deshalb suchte ich nach einer Möglichkeit, Dateien in dem Verzeichnis, die älter als xxx Min/Std sind automatisch gelöscht werden, da diese ja nicht mehr benötigt werden.

Durch dieses Konstrukt habe ich nun die Möglichkeit, # den Verzeichnisinhalt auszulesen.

opendir(DIR,"/home/counterservice/www/digits/");
@dateien = readdir(DIR);
closedir(DIR);

Um dann anschleßend in einer Datei zu speichern

open (LOG, ">/home/counterservice/user/timesoft/counter/log/dir.txt");
foreach $line (@dateien)
  {
  print LOG "$line\n";
  }
close (LOG);

Diese Dateiliste kann ich nun auslesen und die Dateien anhand des Dateinamens weierverarbeiten.

Da es bei mir nun wichtig war, Dateien rauszufinden, die älter als xxx sind, habe ich die Dateinamen etwas verändert. so wird nun ein Dateiname nun um die Uhrzeit, die der Befehl time ausgibt, erweitert. Dabei entsteht nun ein Dateiname wie tmp929855463.0.9876254.gif.
Wenn ich nun die Datei auslese, um die in Frage kommenden Dateien zu ermitteln, muß ich nur den Wert der Uhrzeit extrahieren und mit der aktuellen Zeit - xxx vergleichen. Wenn die überprüfte Datei dem kriterium entspricht, kann ich dann ie gewünscht mit ihr weiterverfahren. Bei mir eben Datei löschen.

Also, noch einmal Dank für die schnelle Hilfe
Hansi