Nic*_*son 3 perl posix date localtime
我有一个perl脚本,可以通过a获取当前时间,但我也希望在当前时间之前45天获取日期.这是我有的:
*已经尝试过使用date :: calc DHMS,这就是为什么第二个按照它的方式进行格式化但是它一直返回错误的原因
# get the current time stamp
use POSIX qw( strftime );
my $current_time = strftime("%Y-%m-%d %H:%M:%S", localtime);
print "\n$current_time\n";
# get the date 45 days ago
my $time = strftime("%Y, %m, %d, %H, %M, %S", localtime);
print "\n$time\n\n";
Run Code Online (Sandbox Code Playgroud)
你试过DateTime吗?
my $now = DateTime->now( time_zone => 'local' );
my $a_while_ago = DateTime->now( time_zone => 'local' )->subtract( days => 45 );
print $a_while_ago->strftime("%Y, %m, %d, %H, %M, %S\n");
Run Code Online (Sandbox Code Playgroud)
最好使用DateTime,DateManip或Date :: Calc,但您也可以:
use POSIX 'strftime', 'mktime';
my ($second,$minute,$hour,$day,$month,$year) = localtime();
my $time_45_days_ago = mktime($second,$minute,$hour,$day-45,$month,$year);
print strftime("%Y-%m-%d %H:%M:%S", localtime $time_45_days_ago), "\n";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3128 次 |
| 最近记录: |