1.系统时间
参数:
-s 设置系统时间:(只能root用户设置)
-d, --date=STRING 解析字符串并按照指定格式输出,字符串不能是'now'。
%b 月份
这里说的系统时间:是Linux操作系统维护的时间。
查看时间和日期:
date
# 或
echo `date`
系统日期设定成2021年12月30日:
date -s 12/30/2021
系统时间设定成12点03分50秒:
date -s 12:03:50
##其他:
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" # 这样可以设置全部时间
示例:
date +%c
# 2024年05月22日 星期三 20时44分06秒
date +%D //等同于:+%m/%d/%y
# 05/22/24
date +%x //本地的日期格式
# 2024年05月22日
date +%T //等同于:+%H:%M:%S
# 20:47:57
-d:
#1天前的期日:
date -d "1 day ago" +"%Y-%m-%d" # 2024-06-14
#5天后的时间:
date -d "5 day" # 2024年 06月 20日 星期四 09:54:49 CST
#从2024年1月1日开始,366天之后的时间:
date -d "2024-1-1 366 day" # 2025年 01月 01日 星期三 00:00:00 CST
#过3月零1天后的时间:
date -d '3 months 1 day' # 2024年 09月 16日 星期一 09:59:53 CST
#显示12月[Dec]25日在当年的哪一天:
date -d '25 Dec' +%j # 360
#显示2月[Feb]1日在当年的哪一天:
date -d '1 Feb' +%j # 032
输出5秒后的时间:
date -d "5 second" +"%Y-%m-%d %H:%M:%S"
#2024-05-23 14:53:45
时间格式化 :
date -d "2009-12-12" +"%Y/%m/%d %H:%M.%S" #指定格式化时间
date "+%Y/%m/%d %H:%M:%S" #当前时间格式化
#2024/05/23 14:25:12
#一年中的第几天
date +%j
#一年中的第几周:以 周一 为第一天的情形
date +%V
#一年中的第几周:以 周日 为第一天的情形
date +%U
#一年中的第几周:以 周一 为第一天的情形
date +%W
#一周中的第几天:[0-6],周日:0
date +%w
创建 以时间命名的文件或目录
mkdir `date +%F_%X`
touch `date +%F_%X`
touch `date +"%Y-%m-%d_%H:%M:%S"`
# %F 完整的日期;等价于 %Y-%m-%d
# %X 本地的日期格式(例如,23:13:48)
注意:以下会报错
touch `date "+%Y/%m/%d %H:%M:%S"`
mkdir `date "+%Y/%m/%d %H:%M:%S"`
原因:touch A B 或 touch 2021/02/12 :一个是创建多个文件,一个是带有目录的文件
2.硬件时间
主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟,硬件时间存放于CMOS中。
查看硬件时间:
hwclock
强制把系统时间写入硬件(cmos)中:
hwclock -w
将硬件时间写入系统时间:
hwclock -s
NTP时间协调服务器
NTPdate命令是使用NTP协议来从网络同步时间的命令, NTP(Network Time Protocol) 网络时间协
议。
网络时间协议:下载安装
yum -y install ntpdate
NTP的时间同步:阿里云服务器:
#命令格式:ntpdate [NTP服务器IP或主机名]
ntpdate ntp.aliyun.com
时间同步路由器 :
ntpdate 192.168.1.1
3.时区
#查看当前时区
date -R