Linux命令date命令详解

在linux环境中,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多方便,下面是详细的使用说明和示例

在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多方便。

1.命令格式:date[参数]… [+格式]

2.命令功能:

date可以用来显示或者设定系统的日期与时间。

3.命令参数:

%H  小时(00-23之间表示)

%I  小时(01-12之间表示)。

%K  小时(0-23之间表示)。

%l  小时(0-12之间表示)。

%M  分钟(00-59之间表示)。

%P  AM或PM。

%r   时间(含时分秒,小时以12小时AM/PM来表示)。

%s  总秒数。起算时间为1970-01-01 00:00:00  UTC。

%S  秒(以本地惯用法来表示)。

%T  时间(含时分秒,小时以24小时制表示)。

%X  时间(以本地惯用法来表示)。

%Z  时区

%a  星期的缩写。

%A  星期的完整名称。

%b  月份的英文名缩写。

%B  月份的完整英文名称。

%c  日期与时间。(只输入“date”指令也可以显示同样的结果)

%d  日期(01-31表示)。

%D 日期(含年月日)。

%j  该年的第几天。

%m  月份(01-12表示)。

%U  该年的周数

%w  该周的天数,0代表周日,1代表周一,以此类推。

%x  日期(以本地惯用法来表示)。

%y  年份(00-99来表示)。

%Y 年份(以四位数来表示)。

%n  在显示时,插入新的一行。

%t  在显示时,插入tab。

MM  月份(必要)。

DD  日期(必要)。

hh   小时(必要)。

ss  秒 (选择性)

选择参数:

-d  <字符串>    显示字符串所指的时间与日期。字符串前后必须加上双引号。

-s  <字符串>    根据字符串来设置时间与日期。字符串前后必须加上双引号。

-u      显示GMT (格林威治时间)

–help   在线帮助

–version    显示版本信息

4.使用说明:

1.在显示方面,使用者可以设定欲显示的格式,格式设定为一个+号后接数个标记下:%打印出%

%n : 下一行

%t : 跳格

%H : 小时 (00..23)

%I : 小时 (01..12)

%l : 小时 (0..23)

%M : 小时 (00..59)

%k : 小时 (0..23)

%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)

2.在设定时间方面:

date -s //设置当前时间,只有root权限才能设置,其他只能查看。
date -s 20080523 //设置成20080523,这样会把具体时间设置成空00:00:00
date -s 01:01:01 //设置具体时间,不会对日期做更改
date -s “01:01:01 2008-05-23″ //这样可以设置全部时间
date -s “01:01:01 20080523″ //这样可以设置全部时间
date -s “2008-05-23 01:01:01″ //这样可以设置全部时间
date -s “20080523 01:01:01″ //这样可以设置全部时间
3.加减:
date +%Y%m%d         //显示前天年月日
date +%Y%m%d –date=”+1 day”  //显示前一天的日期
date +%Y%m%d –date=”-1 day”  //显示后一天的日期
date +%Y%m%d –date=”-1 month”  //显示上一月的日期
date +%Y%m%d –date=”+1 month”  //显示下一月的日期
date +%Y%m%d –date=”-1 year”  //显示前一年的日期
date +%Y%m%d –date=”+1 year”  //显示下一年的日期

5.使用实例

实例1:显示当前时间

命令:

date

1

date ‘+%D’

2

date ‘+%c’

3

date’+%x’

4

date ‘+%T’

5

实例2:显示日期和设定时间

命令:date –date 08:42:00

11

说明: #后为需要输入的命令

date命令的另一个扩展时 -d选项,也非常有用。使用这个强大的选项,通过将日期作为引号括起老的参数提供,你可以快速地查名一个特定的日期。-d选项还可以告诉你,相对于当前日期若干天的某一天的日期或者时间,将这些相对偏移用引号括起来,作为-d选项的参数,就可以完成这项任务。

具体如下:

date -d “nov 22”

222

使用ago指令,你可以得到过去的日期:

date -d ’30 days ago’ (30天前的日期)

44

实例5: 显示时间后跳行,再显示目前日期

命令:date ‘+%T%n%D’

66

暂时分享到这里,谢谢大家。

原创文章,作者:eedsxb,如若转载,请注明出处:http://www.178linux.com/81700

(0)
上一篇 2017-07-18 17:39
下一篇 2017-07-18 20:04

相关推荐

  • 程序员的相关笑话(二)

    从前,有一个牧羊人,他有很多的羊。一天他赶着他的那群羊到了一条公路边上。突然,有一辆保时洁急驶过来,上面坐着一个年轻人人,穿着Armani的衣服,和Cerutti的皮鞋,Ray-Ban的太阳眼镜,TAG-Heuer的手表,以前Versace的领带。 他走到牧羊人面前问牧羊人:“如果我能说出你有多少只羊,你能给我一只吗?” 牧羊人看了看他那一大群数都数不过来的…

    Linux干货 2016-07-10
  • 马哥教育网络班21期-第6周课程练习

    第6周课程练习 请详细总结vim编辑器的使用并完成以下练习题   1、         复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; # cp /etc/rc.d/rc.s…

    Linux干货 2016-08-30
  • 文本处理工具

    1、cat命令 功能: 显示文本内容,连接合并文本内容并在标准设备上输出 语法: cat [OPTION]… [FILE]… 选项: -E:显示行结束符(回车)$ -A:显示所有控制符,相当于-vET -n:对显示出的每一行进行编号 -b:对非空白行编号 -s:将连续的空行压缩成一行 -T:把TAB字符显示为^I -v:除了&nb…

    Linux干货 2016-08-07
  • n28 第二周作业

    n28 第二周作业

    Linux干货 2017-12-09
  • 【盘点】2017年9-11月运维大会(时间+地点)

    到底未来的运维模式是什么?如今运维人员面临着怎样的转变? 活动家为您精心挑选整理了9-11月七场运维大会希望本文能帮您! CNUTCon 全球运维技术大会2017 大会简介: CNUTCon全球运维技术大会是由InfoQ主办的运维&容器技术盛会。大会为期2天,主要面向各行业对运维&容器技术感兴趣的中高端技术人员。秉承着“同步前沿技术、共享实战…

    2017-08-31
  • 给linux系统添加新的磁盘

    虚拟化环境中,我们经常会遇到需要增加磁盘容量的情况,通常有两种方式,第一种是添加一块新的硬盘,另一种是扩容原有磁盘,以下是添加新磁盘至linux系统的操作规范。注:具体磁盘信息可能有所不同。 ##查看新增加磁盘/dev/sdb的信息 [root@CentOS7 ~]# fdisk -l /dev/sdb   Disk /dev/sdb: 5368 …

    Linux干货 2016-11-11