in reply to Time/date calculation
You don't need any module. As your file names are well formatted - padded with zeroes and all the fields are in the right order, all you need is to compare file names as strings, in your case they follow the dictionary order.
Instead of plus 30 minutes, subtract it, and form the file name on the boundary. Then just compare all the log file names with it as if they are all strings.
my $offset = 30; display(reverse((localtime(time() - 60 * $offset))[0 .. 5])); sub display { my @t = @_; printf("%02d%02d%02d%02d%02d%02d\n", ($t[0] + 1900) % 100, $t[ +1] + 1, @t[2 .. 5]); }
|
|---|