Linux下时间设置的相关命令小结

时间:2022-05-12 05:05:11

在联网环境中,保持你 Linux 系统时间准确是一个好的习惯。Linux 系统中有很多服务要求时间正确才能在联网条件下正常工作。

让我们来看看你可以用来管理你机器时间的命令。在 Linux 中,有两种方式管理时间:系统时间和硬件时间。

系统时间由系统时钟管理,硬件时间由硬件时钟管理。

要查看你的系统时间、日期和时区,像下面这样使用 date 命令。
 

复制代码

代码如下:


tecmint@tecmint ~/Linux-Tricks $ date


Wed Sep  9 12:25:40 IST 2015
像下面这样用 date -s 或 date -set=“STRING” 设置系统时间。

复制代码

代码如下:


tecmint@tecmint ~/Linux-Tricks $ sudo date -s "12:27:00"


Wed Sep  9 12:27:00 IST 2015

复制代码

代码如下:

tecmint@tecmint ~/Linux-Tricks $ sudo date --set="12:27:00"


Wed Sep  9 12:27:00 IST 2015
你也可以像下面这样设置时间和日期。

复制代码

代码如下:


tecmint@tecmint ~/Linux-Tricks $ sudo date 090912302015


Wed Sep  9 12:30:00 IST 2015
使用 cal 命令从日历中查看当前日期。

复制代码

代码如下:


tecmint@tecmint ~/Linux-Tricks $ cal


   September 2015     
Su Mo Tu We Th Fr Sa  
       1  2  3  4  5  
 6  7  8  9 10 11 12  
13 14 15 16 17 18 19  
20 21 22 23 24 25 26  
27 28 29 30      
使用 hwclock 命令查看硬件时钟时间。

复制代码

代码如下:


tecmint@tecmint ~/Linux-Tricks $ sudo hwclock


Wednesday 09 September 2015 06:02:58 PM IST  -0.200081 seconds
要设置硬件时钟时间,像下面这样使用 hwclock –set –date=“STRING” 命令。

复制代码

代码如下:


tecmint@tecmint ~/Linux-Tricks $ sudo hwclock --set --date="09/09/2015 12:33:00"
tecmint@tecmint ~/Linux-Tricks $ sudo hwclock


Wednesday 09 September 2015 12:33:11 PM IST  -0.891163 seconds
系统时间是由硬件时钟时间在启动时设置的,系统关闭时,硬件时间被重置为系统时间。

 

因此你查看系统时间和硬件时间时,它们是一样的,除非你更改了系统时间。当你的 CMOS 电量不足时,硬件时间可能不正确。

你也可以像下面这样使用硬件时钟的时间设置系统时间。
 

复制代码

代码如下:


$ sudo hwclock --hctosys


也可以像下面这样用系统时钟时间设置硬件时钟时间。

复制代码

代码如下:


$ sudo hwclock --systohc


要查看你的 Linux 系统已经运行了多长时间,可以使用 uptime 命令。

复制代码

代码如下:


tecmint@tecmint ~/Linux-Tricks $ uptime


12:36:27 up  1:43,  2 users,  load average: 1.39, 1.34, 1.45

复制代码

代码如下:

tecmint@tecmint ~/Linux-Tricks $ uptime -p


up 1 hour, 43 minutes

复制代码

代码如下:

tecmint@tecmint ~/Linux-Tricks $ uptime -s


2015-09-09 10:52:47

 

Linux命令date日期时间和Unix时间戳互转
A.将日期转换为Unix时间戳
将当前时间以Unix时间戳表示:
 

复制代码

代码如下:

date +%s


输出如下:
1361542433
转换指定日期为Unix时间戳:

复制代码

代码如下:

date -d '2013-2-22 22:14' +%s


输出如下:
1361542440B.将Unix时间戳转换为日期时间
不指定日期时间的格式:

复制代码

代码如下:

date -d @1361542596


输出如下:
Fri Feb 22 22:16:36 CST 2013 指定日期格式的转换:

复制代码

代码如下:

date -d @1361542596 +"%Y-%m-%d %H:%M:%S"


输出如下:
2013-02-22 22:16:36