Christian Bliß: Dateialter feststellen

Hallo,

ich bräuchte eine Abfrage, die das Alter einer Datei feststellt. Ich kenne mich mit dieser Art wenig aus und bräuchte am besten die komplette Abfrage:

  • Falls die Datei test.txt älter ist als 24 h soll sie gelöscht werden.

MfG Christian Bliß

  1. Hallo,

    ich bräuchte eine Abfrage, die das Alter einer Datei feststellt. Ich kenne mich mit dieser Art wenig aus und bräuchte am besten die komplette Abfrage:

    Auf welchem System arbeitest du denn? Falls es Linux oder ähnliches ist, dann schauts wohl schlecht aus. Ich habe unter http://www.faqs.org/faqs/unix-faq/faq/part3/section-1.html folgednes gefunden:

    3.1)  How do I find the creation time of a file?

    You can't - it isn't stored anywhere.  Files have a last-modified
          time (shown by "ls -l"), a last-accessed time (shown by "ls -lu")
          and an inode change time (shown by "ls -lc").

    Falls dir eine dieser Zeiten hilft, dann zeigt dir http://www.perldoc.com/perl5.6.1/pod/func/stat.html, wie du sie über Perl abfragen kannst.

    Viele Grüße,

    Stefan

    --
    Lass dir das Tanzen NICHT verbieten
    http://tanzverbot.de
    • Falls die Datei test.txt älter ist als 24 h soll sie gelöscht werden.

    Hallo

    Das Alter einer Datei in Tagen ermittelt man mit:

    $alter_in_tagen = -C $file

    Unter Linux/Unix wird das alter der Datei seit dem letzten Verschieben/Kopieren der Datei angezeigt. Unter Windows wird das Alter der Datei seit dem Erstellen angezeigt.
    Es wird das Alter angezeigt wie es zur Zeit des Scriptstartes war. Das bedeutet, wenn eine Datei nach dem Start des Scriptes erstellt/kopiert wurde, das Alter der Datei einen negativen Wert haben kann.
    (will man es ganz genau haben dann kann man es so machen:

    $alter_in_tagen_exakt = (-C $file)+((time - $^T)/60/60/24)

    )
    Bei kurzen laufenden Scripten ist das aber nicht wichtig.

    Soll die Datei nach 24 Stunden Gelöscht werden, dann kann man folgendes Schreiben:

    unlink $file if (-C $file)>=1;

    Natürlich brauchst du auch die Berechtigung die Datei löschen zu dürften. Das ist der Fall wenn man in sie schreiben oder erstellen kann.

    ToPeG