Leser: 2
|< 1 2 3 >| | 21 Einträge, 3 Seiten |
1
2
3
4
5
6
my $filename = 'name.2004021535523';
my ($date) = $filename =~ m/\.(\d{8})\d+$/;
my $stop_date = ((localtime(time))[5] + 1900).sprintf("%02d",((localtime(time))[4] + 1)).sprintf("%02d",(localtime(time))[3]);
if($stop_date - $date > 14){
unlink $filename;
}
[E|B,16.02.2004, 15:13]Wobei natürlich vorrausgesetzt wird, dass das SCript auch jeden Tag min. einmal aufgerufen wird. Sonst hat das ganze wenig Sinn. ;)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@files = <*>;
foreach my $file (@files) {
# loeschen wenn Datei vor 14 Tagen das letzte mal...
# modifiziert
unlink($file) if -M $file >= 14;
# darauf zugegriffen
# unlink($file) if -A $file >= 14;
}
1
2
3
4
5
6
7
my $filename = 'name.20040215135523';
my($tstr) = $filename =~ /\.(\d+)$/;
my(@date) = unpack("A4A2A2A2A2A2", $tstr);
printf("%02d:%02d:%02d %02d.%02d.%04d\n", @date[3,4,5,2,1,0]);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use Time::Local;
my $filename = 'name.20040215135523';
my $days = 14;
my $delta_secs = 86400 * $days;
my($datestr) = $filename =~ /\.(\d+)$/;
my(@date) = unpack("A4A2A2A2A2A2", $datestr);
my($date_epocs) = timelocal(@date[5, 4, 3, 2], $date[1] - 1, $date[0] - 1900);
if ((time() - $date_epocs) >= $delta_secs) {
printf("Datei aelter als %d Tage.\n", $days);
# Datei loeschen
}
Quotevon renee
Code: (dl )my $stop_date = ((localtime(time))[5] + 1900).sprintf("%02d",((localtime(time))[4] + 1)).sprintf("%02d",(localtime(time))[3]);
|< 1 2 3 >| | 21 Einträge, 3 Seiten |