【发布时间】:2012-02-27 12:28:29
【问题描述】:
要求 - 我的文件名为“Rajesh.1202242219”。数字不过是日期“date '+%y''%m''%d''%H''%M'”格式。
现在我正在尝试编写一个 perl 脚本来从文件名中提取数字并与当前系统日期和时间进行比较,并根据此比较的输出,使用 perl 打印一些值。
方法:
从文件名中提取数字:
if ($file =~ /Rajesh.(\d+).*/) {
print $1;
}
将此时间转换为 perl 中的可读时间
my $sec = 0; # Not Feeded
my $min = 19;
my $hour = 22;
my $day = 24;
my $mon = 02 - 1;
my $year = 2012 - 1900;
my $wday = 0; # Not Feeded
my $yday = 0; # Not Feeded
my $unixtime = mktime ($sec, $min, $hour, $day, $mon, $year, $wday, $yday);
print "$unixtime\n";
my $readable_time = localtime($unixtime);
print "$readable_time\n";
查找当前时间并比较...
my $CurrentTime = time();
my $Todaydate = localtime($startTime);
但这里的问题是,我没有得到如何从$1 中提取 2 位数字并分配给$sec、$min 等的解决方案。有什么帮助吗?
另外,如果您对此问题陈述有好的方法,请与我分享
【问题讨论】: