#!/usr/bin/env perl use POSIX 'strftime'; my @t = (localtime(time)); #mktime(sec, min, hour, mday, mon, year, wday = 0, yday = 0, isdst = 0); my $lastday = POSIX::mktime(0,0,0,0,$t[4],$t[5],0,0,-1); my $lastday_prev = POSIX::mktime(0,0,0,0,$t[3],$t[5],0,0,-1); my @ld_prev = localtime($lastday_prev); my @ld = localtime($lastday); print "ld is $ld[3]\n"; print "ld_prev is $ld_prev[3]\n"; my $monthly_date_beg = strftime('%m/' . $ld_prev[3] . '/%Y', $t[0],$t[1], $t[2], $t[3], $t[4]-2, $t[5]); my $monthly_date_end = strftime('%m/' . $ld[3] . '/%Y', $t[0],$t[1], $t[2], $t[3], $t[4]-1, $t[5]); rint "beg = $monthly_date_beg\n"; print "end = $monthly_date_end\n";