胡文成的个人博客

date命令的使用

2024-07-21

1)功能

显示或修改系统时间和日期

说明:root用户才能使用该命令设置时间,一般用户只能使用该命令显示时间

2)使用

date

格式 说明
%Y%y 显示年份,大写Y显示四位数年份值,小写y显示后两位年份值
%m 显示月份,范围:01~12
%b%B 显示月份,小写形式展示月份简称,大写形式展示月份全称
%d 显示一个月的第几天
%H 显示小时,范围:00~23
%l 显示小时,范围:01~12
%k 显示小时,范围:0~23
%l 显示小时,范围:1~12
%M 显示分钟,范围:00~59
%S 显示秒,范围:00~59
%Z 显示时区
%x 显示年份和日期,相当于mm/dd/yyyy
%D 显示年份和月份,格式为mm/dd/yy
%X 显示时间格式,相当于%H:%M:%S
%a 显示星期几
%p 显示上午还是下午:AM表示上午,PM表示下午
3)典型例子
① 设置系统时间

使用data -s设置日期或时间

1
2
[root@nj-study ~]# date -s "1992-04-04"
1992年 04月 04日 星期六 00:00:00 CST

说明:date设置的是系统时间,还有一个概念叫硬件时间

  • 系统时间

    由操作系统内核维护,主要用于系统和应用程序的时间戳记录

    修改影响:影响应用程序日志计划任务(如cron作业)和其他基于时间的操作

  • 硬件时间

    由主板上的RTC芯片维护,系统启动时从RTC读取时间,并在关机时写回RTC

    修改影响:主要在系统启动和关机时与系统时间同步,影响BIOS设置和启动顺序

系统时间硬件时间之间可以进行同步,在CentOS中使用的是hwclock 命令进行控制

  • 将硬件时间写入系统时间

    1
    # hwclock --hctosys
  • 将系统时间写入硬件时间

    1
    # hwclock --systohc

Chrony 是一款开源的网络时间协议(NTP)客户端和服务端软件,旨在提供高精度的时间同步功能,优点是:更快的同步速度、低延迟、低CPU占用和低内存消耗

安装:dnf install chrony -y

设置开机启动:systemctl enable chronyd

立即同步时间:chronyc makestep

image-20240707160603936
② 显示国际化标准日期时间
1
2
[root@nj-study ~]# date "+%Y-%m-%d %H:%M:%S"
2024-07-07 14:59:14
③ 显示前几天或后几天的时间
1
2
3
4
[root@nj-study ~]# date -d "2 days ago"
2024年 07月 05日 星期五 16:08:03 CST
[root@nj-study ~]# date -d "2 days"
2024年 07月 09日 星期二 16:08:14 CST
Tags: linux

扫描二维码,分享此文章