我正在从MysqL数据库中提取UTC时间戳,格式为:2012-02-06 13:50:09
我需要Perl来拉取当前的UTC时间,并在几分钟(或几秒)内获得两个时间戳之间的差异.我在Unix子进程中这样做,但是我很难获得UTC时间并进行比较,因为本地盒子在东部时间运行.我不介意在Unix时间这样做,但不确定如何准确地将UTC时间与“last_timestamp”进行比较,后者是来自mysql的基于UTC的时间戳.
my $date_diff = qx(date -d "$(date +'%F %T')" +%s) -qx(date -d "$last_timestamp" +%s);
一如既往,您的帮助肯定受到赞赏和重视.
解决方法 >范式错误. Unix机箱不“在东部时间运行”或“在太平洋时间运行”. Unix框运行“自纪元以来的秒数”,并具有默认时区,用于向用户表示时间值.一旦你理解了这一点,许多其他有用的东西都是免费的.>你可以使用’date -u’让’date’返回UTC时间
> Perl的
time
内置函数返回自纪元以来的秒数(没有时区).然后,您可以使用Perl gmtime
内置函数将其转换为UTC Y-M-D-H-M-S值.使用任何参数调用 gmtime
实际上与gmtime(time)相同. >使用 DateTime::Format::MySQL解析MysqL日期/时间值.您可能还会发现 DateTime很有用.另请参见 http://datetime.perl.org/ 总结
以上是内存溢出为你收集整理的linux – Perl获取UTC时间并获得UTC时间戳之间的差异全部内容,希望文章能够帮你解决linux – Perl获取UTC时间并获得UTC时间戳之间的差异所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)