千家信息网

如何设置与使用Linux系统中的日期设定与date命令

发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,这篇文章主要介绍"如何设置与使用Linux系统中的日期设定与date命令",在日常操作中,相信很多人在如何设置与使用Linux系统中的日期设定与date命令问题上存在疑惑,小编查阅了各式资料,整理出简
千家信息网最后更新 2025年12月02日如何设置与使用Linux系统中的日期设定与date命令

这篇文章主要介绍"如何设置与使用Linux系统中的日期设定与date命令",在日常操作中,相信很多人在如何设置与使用Linux系统中的日期设定与date命令问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如何设置与使用Linux系统中的日期设定与date命令"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

名称 : date
使用权限 : 所有使用者
使用方式 : date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]
说明 : date 能用来显示或设定系统的日期和时间,在显示方面,使用者能设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下 :
时间方面 :
% : 印出
% %n : 下一行
%t : 跳格
%H : 小时(00..23)
%I : 小时(01..12)
%k : 小时(0..23)
%l : 小时(1..12)
%M : 分钟(00..59)
%p : 显示本地 AM 或 PM
%r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)
%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数 %S : 秒(00..61)
%T : 直接显示时间 (24 小时制)
%X : 相当于 %H:%M:%S
%Z : 显示时区
日期方面 :
%a : 星期几 (Sun..Sat)
%A : 星期几 (Sunday..Saturday)
%b : 月份 (Jan..Dec)
%B : 月份 (January..December)
%c : 直接显示日期和时间
%d : 日 (01..31)
%D : 直接显示日期 (mm/dd/yy)
%h : 同 %b
%j : 一年中的第几天 (001..366)
%m : 月份 (01..12)
%U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形)
%w : 一周中的第几天 (0..6)
%W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形)
%x : 直接显示日期 (mm/dd/yy)
%y : 年份的最后两位数字 (00.99)
%Y : 完整年份 (0000..9999)
若是不以加号作为开头,则表示要设定时间,而时间格式为 MMDDhhmm[[CC]YY][.ss],
其中 MM 为月份,
DD 为日,
hh 为小时,
mm 为分钟,
CC 为年份前两位数字,
YY 为年份后两位数字,
ss 为秒数
把计 :
-d datestr : 显示 datestr 中所设定的时间 (非系统时间)
--help : 显示辅助讯息
-s datestr : 将系统时间设为 datestr 中所设定的时间
-u : 显示目前的格林威治时间
--version : 显示版本编号

例子 :
显示时间后跳行,再显示目前日期 : date +%T%n%D
显示月份和日数 : date +%B %d
显示日期和设定时间(12:34:56) : date --date 12:34:56
设置系统当前时间(12:34:56):date --s 12:34:56
注意 : 当你不希望出现无意义的 0 时(比如说 1999/03/07),则能在标记中插入 - 符号,比如说 date +%-H:%-M:%-S 会把时分秒中无意义的 0 给去掉,像是原本的 08:09:04 会变为 8:9:4。另外,只有取得权限者(比如说 root)才能设定系统时间。 当你以 root 身分更改了系统时间之后,请记得以 clock -w 来将系统时间写入 CMOS 中,这样下次重新开机时系统时间才会持续抱持最新的正确值。
ntp时间同步
linux系统下默认安装了ntp服务,手动进行ntp同步如下

代码如下:


ntpdate ntp1.nl.net


当然,也能指定其他的ntp服务器


扩展功能
date 工具可以完成更多的工作,不仅仅只是打印出当前的系统日期。您可以使用它来得到给定的日期究竟是星期几,并得到相对于当前日期的相对日期。了解某一天是星期几
GNU 对 date 命令的另一个扩展是 -d 选项,当您的桌上没有日历表时(UNIX 用户不需要日历表),该选项非常有用。使用这个功能强大的选项,通过将日期作为引号括起来的参数提供,您可以快速地查明一个特定的日期究竟是星期几:

代码如下:


$ date -d "nov 22"
Wed Nov 22 00:00:00 EST 2006

在本示例中,您可以看到今年的 11 月 22 日是星期三。
所以,假设在 11 月 22 日召开一个重大的会议,您可以立即了解到这一天是星期三,而这一天您将赶到驻地办公室。
获得相对日期
d 选项还可以告诉您,相对于 当前日期若干天的究竟是哪一天,从现在开始的若干天或若干星期以后,或者以前(过去)。通过将这个相对偏移使用引号括起来,作为 -d 选项的参数,就可以完成这项任务。
例如,您需要了解两星期以后的日期。如果您处于 Shell 提示符处,那么可以迅速地得到答案:

代码如下:


$ date -d '2 weeks'

关于使用该命令,还有其他一些重要的方法。使用 next/last指令,您可以得到以后的星期几是哪一天:

代码如下:

$ date -d 'next monday'

(下周一的日期)

代码如下:

$ date -d next-day +%Y%m%d

(明天的日期)或者:

代码如下:

date -d tomorrow +%Y%m%d

代码如下:

$ date -d last-day +%Y%m%d

(昨天的日期) 或者:

代码如下:

date -d yesterday +%Y%m%d

代码如下:

$ date -d last-month +%Y%m

(上个月是几月)

代码如下:

$ date -d next-month +%Y%m

(下个月是几月)
使用 ago 指令,您可以得到过去的日期:

代码如下:

$ date -d '30 days ago'

(30天前的日期)

您可以使用负数以得到相反的日期:

代码如下:

$ date -d 'dec 14 -2 weeks'

(相对:dec 14这个日期的两周前的日期)

代码如下:

$ date -d '-100 days'

(100天以前的日期)

代码如下:

$ date -d '50 days'

(50天后的日期)

这个技巧非常有用,它可以根据将来的日期为自己设置提醒,可能是在脚本或 Shell 启动文件中,如下所示:

代码如下:


DAY=`date -d '2 weeks' +"%b %d"`
if test "`echo $DAY`" = "Aug 16"; then echo 'Product launch is now two weeks away!'; fi

到此,关于"如何设置与使用Linux系统中的日期设定与date命令"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

日期 时间 代码 系统 星期 小时 命令 月份 年份 格式 学习 数字 方面 更多 标记 比如说 使用者 功能 加号 参数 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全这个职位需要学一些什么 微软数据库商业模式 蚂蚁会员网络技术有限公司 维护网络安全教育心得体会 网络安全厂商产值 中国网络技术实力 信息网络安全监察专业的工资 天津迅杰网络技术有限公司 吉林大学计算机网络技术学费 nas可以做git服务器吗 软件开发有没有注册师证 我国网络安全法解决的基础问题 修改标题服务器繁忙请稍后再试 嘉定区银联网络技术推荐咨询 深圳龙华软件开发公司 网络安全是风险管理过程 关于如何做好网络安全 一个表用到其他表的数据库 河南企业软件开发成本价 数据库服务器解决方案 海洋数据库组织方法 北京理工大学计算机网络技术 网络安全审查员怎么样 工程信息网络技术 陕西服务器虚拟化迁移云服务器 网络安全公益广告内容 20G的数据库结转要多久 标签打印机如何使用数据库 服务器的易用性体现哪些地方 大型数据库系统对开发方向有用吗
0