有没有办法,在Linux中,有问题得到一个给定的时间string的UTC时间
Tue Dec 14 10:30:23 PST 2012 Tue Jan 4 11:30:23 EST 2013
到UTC时间,而不考虑(也不改变)本地时区设置?
如何在C#中获取不同国家的当前时间
ASP.NET中的Windows时区缩写
是结构统计时间GMT?
Apacheconfiguration帮助 – 为什么不同的进程“在不同的时区”?
mktime和timelocal之间的区别
date -u -d "Tue Dec 14 10:30:23 PST 2012"报告date -u -d "Tue Dec 14 10:30:23 PST 2012" Fri Dec 14 18:30:23 UTC 2012 。 这种差异是因为2012年12月14日实际上是星期五,而不是星期二。 有效的输入可能会更好…
更新 :最近tz数据库的结果是不同的: EST在给定的日期 (相比之前的结果 ) 产生相同的utc偏移量 。 虽然不影响不同时区可能使用相同缩写的一般结论,因此相同的缩写可能对应于不同的utc偏移量。 请参阅在Python中使用时区缩写名称解析日期/时间字符串?
缩短的时区名称(如EST)可能不明确。
例
#!/bin/sh for tz in Australia/Brisbane Australia/Sydney America/New_York do date -u -d"TZ=":$tz" Tue Jan 4 11:30:23 EST 2013" done
产量
Fri Jan 4 16:30:23 UTC 2013 Fri Jan 4 00:30:23 UTC 2013 Fri Jan 4 16:30:23 UTC 2013
两件事情:
根据所使用的时区,日期字符串可能被解释为不同的时刻
date默默地忽略了Australia/Brisbane应该是UTC+10时区,即date将EST解释为属于不同的时区。 没有EST就会产生正确的时间:
$ date -u -d 'TZ=":Australia/Brisbane" Tue Jan 4 11:30:23 2013' Fri Jan 4 01:30:23 UTC 2013
要查找给定时间和时区缩写的所有可能UTC时间,例如'Tue Jan 4 11:30:23 EST 2013' :
#!/usr/bin/env python from collections import defaultdict from datetime import datetime import pytz # $ sudo apt-get install python-tz # or if you can't install system-wide # $ pip install --user pytz ## Tue Dec 14 10:30:23 PST 2012 #naive_dt,tzname = datetime(2012,12,14,10,30,23),'PST' ## -> Fri Dec 14 18:30:23 2012 UTC # Tue Jan 4 11:30:23 EST 2013 naive_dt,tzname = datetime(2013,1,4,11,'EST' # Fri Jan 4 01:30:23 2013 UTC # Fri Jan 4 00:30:23 2013 UTC # Fri Jan 4 16:30:23 2013 UTC # ambiguous utc_times = defaultdict(list) for zone in pytz.all_timezones: dt = pytz.timezone(zone).localize(naive_dt,is_dst=None) if dt.tzname() == tzname: # same timezone abbreviation utc_times[dt.astimezone(pytz.utc)].append(zone) for utc_dt,timezones in utc_times.items(): print("%s:nt%s" % (utc_dt.strftime('%c %Z'),'nt'.join(timezones)))
产量
全部Tue Jan 4 11:30:23 EST 2013解释为UTC与相应的时区名称:
Fri Jan 4 01:30:23 2013 UTC: Australia/Brisbane Australia/Lindeman Australia/Queensland Fri Jan 4 00:30:23 2013 UTC: Australia/ACT Australia/Canberra Australia/Currie Australia/Hobart Australia/Melbourne Australia/NSW Australia/Sydney Australia/Tasmania Australia/Victoria Fri Jan 4 16:30:23 2013 UTC: America/Atikokan America/Cayman America/Coral_Harbour America/Detroit ... America/New_York ... America/Toronto Canada/Eastern EST EST5EDT Jamaica US/East-Indiana US/Eastern US/Michigan
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。