如何从 perl 中获取当前纪元时间并找到 6 个月前的纪元时间?
我需要比较文件的创建日期以查看它是否为 6 个月或更早。
可以使用以下方法计算差异DateTime
:
use DateTime;
my $dt = DateTime->now; # or if you have epoch: DateTime->from_epoch( 'epoch' => $epoch );
$dt->subtract( DateTime::Duration->new( 'months' => 6 ) );
Date::Calc包有这方面的功能。使用 Date_to_Time 和 Time_to_Date 转换到/从纪元时间,并使用 Add_Delta_YM 添加 -6 个月。
马虎的;粗陋的?
perl -le '$sixm = 30.5*6; for ( glob("*") ) { print "delete $_" if -M > $sixm }'