2018/03/31 每日一个Linux命令 之 date

时间:2023-03-09 06:46:31
2018/03/31 每日一个Linux命令 之 date

date 命令主要用于查看和修改时间和时区

--

这里主要学习基本的查看和设置时间和时区的方法。

直接显示日期

 date '+%D'

效果

vagrant@hong:~$ date '+%D'
03/31/18

--

直接显示时间【24小时制】

date '+%X'

效果

vagrant@hong:~$ date '+%X'
12:31:42 PM

--

如何设置时间

首先应该看你的时区在哪里,是不是选用正确的时区

我这里就是选用了错误时区,导致了时间的错误
vagrant@hong:~$ date
Sat Mar 31 12:46:59 UTC 2018

--

关于时区 

CST:中国标准时间(China Standard Time),这个解释可能是针对RedHat Linux。

UTC:协调世界时,又称世界标准时间,简称UTC,从英文国际时间/法文协调时间”Universal Time/Temps Cordonné”而来。*、香港、澳门、*、蒙古国、新加坡、马来西亚、菲律宾、澳洲西部的时间与UTC的时差均为+8,也就是UTC+8。

GMT:格林尼治标准时间(旧译格林威治平均时间或格林威治标准时间;英语:Greenwich Mean Time,GMT)是指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,因为本初子午线被定义在通过那里的经线。

--

也就是说,我们应该选用CST时区,否则的话时间会差

在linux中与时间相关的文件有

/etc/localtime
/etc/timezone

其中,/etc/localtime是用来描述本机时间,而 /etc/timezone是用来描述本机所属的时区。

--

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

在/usr/share/zoneinfo下存放着不同时区格式的时间文件,执行以下命令,可以将本机时间调整至目标时区的时间格式。 
但是!调整了时间格式,本机所属的时区是保持不变的!

--

修改本机时区

在linux中,有一些程序会自己计算时间,不会直接采用带有时区的本机时间格式,会根据UTC时间和本机所属的时区等计算出当前的时间。 
所以必须得修正本机的时区。

echo 'Asia/Shanghai' >/etc/timezone

--

其他参数

  参考菜鸟教程

    http://www.runoob.com/linux/linux-comm-date.html

  时区设定

    https://blog.csdn.net/xinluke/article/details/52182858

--