在perl中比较日期和时间以及同一时间

时间:2017-07-10 08:31:05

标签: perl date compare

我想比较日期和时间,检查我要打开的文件的时间戳是否会有相同或更大的日期和时间,就像我的时间戳看起来像这样:

$Date = "20170608";
$Time = "105006";

我的主要问题是如何在不添加perl库的情况下有效地执行它,以及如何在日期切换的情况下检查它并且小时将是例如23:59:44

1 个答案:

答案 0 :(得分:2)

#!/usr/bin/env perl use strict; use warnings; use Time::Piece; my $Date = "20170608"; my $Time = "10506"; my $ts = Time::Piece->strptime( "$Date $Time", "%Y%m%d %H%M%S" ); print $ts, "\n"; print "Delta:", $ts->epoch - time(), "\n"; 是perl的核心,支持' strptime'。

$Time

不清楚strptime代表什么时间 - $Time = sprintf ( "%06d", $Time ); 将其转换为10:50:06,但我猜测它可能是01:05:06?

如果是,则填零。

stat

要从文件元数据中读取时间戳,您需要my $mtime = (stat $filename)[9];

{{1}}