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表示网络格式。

浙公网安备 33010602011771号