add first version from ms
This commit is contained in:
commit
e5401e4a9b
31
rsync-timefilter.pl
Executable file
31
rsync-timefilter.pl
Executable file
@ -0,0 +1,31 @@
|
||||
#!/usr/bin/env perl
|
||||
|
||||
use 5.010001;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
use File::Rsync;
|
||||
use DateTime;
|
||||
use DateTime::Duration;
|
||||
use DateTime::Format::Strptime;
|
||||
|
||||
my $now = DateTime->now();
|
||||
my $cutoff_timestamp = $now - DateTime::Duration->new(days => 7);
|
||||
my $parser = DateTime::Format::Strptime->new(
|
||||
pattern => '%Y/%m/%d %H:%M:%S',
|
||||
time_zone => 'UTC',
|
||||
on_error => 'croak',
|
||||
);
|
||||
|
||||
my $rsync = File::Rsync->new(archive => 1);
|
||||
my @files = grep {
|
||||
$_->{timestamp} > $cutoff_timestamp
|
||||
} map {
|
||||
my @parts = split(/\s+/, $_);
|
||||
{
|
||||
name => $parts[4],
|
||||
timestamp => $parser->parse_datetime($parts[2] . ' ' . $parts[3]),
|
||||
}
|
||||
} $rsync->list(src => 'planet.openstreetmap.org::planet/planet/');
|
||||
|
||||
use DDP; p @files;
|
||||
Loading…
Reference in New Issue
Block a user