Linux--><date>命令中所蕴含的小常识

最近开始学习Linux,首次接触的便是<date>命令。

输入:

man date

 

哎哟,不错哦。说明很是详细。

但发现某些命令及字符不太明白:

iso-8601/rfc-2822/rfc-3339是什么?

utc是什么意思?

输入:

date --utc

为什么显示:

  

1、时间基准

如同晶振一样,时间是一个很重要的标准。各个地区都有自己的本地时间,如果大家都只用自己的本地时间,那么相互协调就会出乱子。

比如:你和一个美国朋友想约好一个时间讨论挖掘机技术。结果美国朋友说:我们定在这周二上午10点一起讨论!

但是我们中国本地时间已经是:周二上午12点了! 你特么在逗我?

所以,我们需要一个世界时间基准,全世界的人都以这个时间为基本做偏移而得出本地时间。

1.1格林威治时间

最开始是以”位于英国伦敦郊区的皇家格林威治天文台的标准时间“为世界基准,

但由于地球在它的椭圆轨道里的运动速度不均匀,这个时刻可能与实际的太阳时有误差,最大误差达16分钟。

由于地球每天的自转是有些不规则的,而且正在缓慢减速,因此格林威治时间已经不再被作为标准时间使用。

1.2原子钟


替代格林威治时间的最好基准就是原子钟了,它以原子共振频率标准来计算及保持时间的准确。由于其非常稳定,原子钟是世界上已知最准确的时间测量和频率标准。

2、世界时间基准的表示

2.1名字

世界时间基准,叫做协调世界时,又称世界标准时间世界协调时间,简称UTC。


这个文字的由来很有趣:

协调世界时翻译为英语为:Coordinated Universal Time  缩写为CUT

协调世界时翻译为法语为:Temps Universel Coordonné 缩写为TUC

国际电信联盟希望协调世界时能够在所有语言有单一的缩写。英语和法语区的人同时希望各自的语言缩写CUT和TUC能够成为国际标准,结果最后妥协才使用UTC。

2.2表示

通常情况下,当地的准确时间是以UTC时间为基准表示的。

格式为:+/- 时:分

+代表当前时间比UTC时间快,-代表当前时间比UTC时间慢。

具体各个地区的时间快慢关系可以参考:http://www.timedate.cn/time/timezone.htm

若想详细的了解,请参考:http://en.wikipedia.org/wiki/Time_zone

中国当前时间为例,可以表示为:2015年4月22日 20:12:12 +08:00

那么可以反推出UTC时间为:2015年4月22日 12:12:12 UTC

如果减去时区差后为负,可以减去一天,然后为时加上24即可。这个和减法的借位类似。

比如现在是:2015年4月22日 00:00:00 +08:00

那么UTC时间就是 2015年4月21日  16:00:00 UTC

2.3 iso-8601/rfc-2822/rfc-3339

ISO-8601 其实就是表现时间的一种格式,比如:当前的UTC时间是2015-04-22T12:30Z

同理,RFC-2822和RFC-3339也是表达时间的一种格式,RFC-2822表示邮件格式,RFC-3339表示网络格式。

 

参考资料:http://zh.wikipedia.org/wiki/%E6%97%B6%E5%8C%BA

posted @ 2015-04-22 20:52  KC_CEC  阅读(113)  评论(0)    收藏  举报