Linux系统有系统时间和硬件时间之分:
- 系统时间(date): linux系统下所有的时间调用(除了直接访问硬件时间的命令)都是使用的这个时间。
- 硬件时间(hwclock,clock):主板上BIOS中的时间,由主板电池供电来维持运行,系统开机时要读取这个时间,并根据它来设定系统时间(注意:系统启动时根据硬件时间设定系统时间的过程可能存在时区换算,这要视具体的系统及相关设置而定)。
date命令详解
语法:date [参数]
一月:January(Jan) 二月:February(Feb) 三月:March(Mar)
四月:April(Apr) 五月:May 六月:June(Jun)
七月:July(Jul) 八月:August(Aug) 九月:September(Sep)
十月:October(Oct) 十一月:November(Nov) 十二月:December(Dec)
星期一:Monday 星期二:Thesday 星期三: Wednesday
星期四:Thursday 星期五:Friday 星期六:Saturday
星期日:Sunday
修改当前时间
设定时间:
date -s #设置当前时间,只有root权限才能设置,其他只能查看
date -s 20120523 #设置成20120523,这样会把具体时间设置成空00:00:00
date -s 01:01:01 #设置具体时间,不会对日期做更改
date -s "01:01:01 2012-05-23" #这样可以设置全部时间
date -s "01:01:01 20120523" #这样可以设置全部时间
date -s "2012-05-23 01:01:01" #这样可以设置全部时间
date -s "20120523 01:01:01" #这样可以设置全部时间
年月日
[root@linux ~]# date
Wed(周) Feb(月) 12 21:48:11 CST 2020
[root@linux ~]# date +%Y-%m-%d
2020-02-12
+%Y(年份) +%m(月份) +%d(日) +%y(表示2021年,忽略20)
[root@linux ~]# date +%F
2020-02-12
时分秒
[root@linux ~]# date +%H-%M-%S
21-53-19
[root@linux ~]# date +%T
21:53:19
周
[root@linux ~]# date +%w #表示星期几
3
[root@linux ~]# date +%W #表示今年的第多少周
06
补充
[root@linux ~]# date -d "+3day" #三天后
Sat Feb 15 21:58:03 CST 2020
[root@linux ~]# date -d "-3day" +%F #三天前
2020-02-09
[root@linux ~]# date -d "-3 month" +%F #三个月前
2019-11-12
[root@linux ~]# date -d "-30 min" +%F_%T #30分钟前
2020-02-12_21:29:51
硬件时间用hwclock或者clock命令
[root@host1 ~]# hwclock
2020年06月01日 星期一 10时13分02秒 -0.805503 秒
[root@host1 ~]# clock
2020年06月01日 星期一 10时13分07秒 -0.507462 秒
将硬件时间写入到系统时间:
[root@host1 ~]# hwclock -s
将系统时间写入到硬件时间
[root@host1 ~]# hwclock -w