ToPeG: Dateialter feststellen

Beitrag lesen

  • 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