Stefan Priebe: Kann man Dateien nach einem bestimmten Zeitraum löschen ?

Hallo!

Ist es Möglich, via CGI (Perl) ein ganzes Verzeichnis zu durchsuchen und dann bestimmte Dateien (die 2 Tage alt sind oder älter) zu löschen ?

MfG.
Stefan

  1. Hallo!

    Ist es Möglich, via CGI (Perl) ein ganzes Verzeichnis zu durchsuchen und dann bestimmte Dateien (die 2 Tage alt sind oder älter) zu löschen ?

    Dieses Problem giebt es zum Beispiel bei  virtuellen Postkarten, denn da sollen z.b. nach 11 Tagen die Karten auf den Server gelöscht werden, damit nicht zuviel Webspace verbraucht wird.

    Schau mal bei http://www.tag4tag.com/scripts/postcards/bnb-postcards . Dort stehen nur CGI Sripts in deutcher Sprache. Dieses CGI Skript hat die Möglichkeiten Dateien nach einen bestimmten Datum (die Verweilzeit kann mann einstellen) zu löschen. Lade dir das Script runter und schau dir den Quellcode genau an.kopiere dier den Teil  raus den du brachst und verändere es nach deinen Wünsche.. Lese auch die Readme Datei durch da steht es auch noch einmal. Ich glaube es müsste das richtige für dich sein
    Gruß Klaus

  2. Hier die Lösung:
    $verzeichnis = "ips";
    $tage = 2;

    opendir(CARDDIR, "$verzeichnis");
      @items = grep(/[0-9]$EXT/,readdir(CARDDIR));
      closedir(CARDDIR);
      foreach $item (@items)
       {
        if (-M "$verzeichnis/$item" > $tage)
         {
          unlink("$verzeichnis/$item");
         }
       }