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)
eedsxbeedsxb
上一篇 2017-07-18
下一篇 2017-07-18

相关推荐

  • 用户与组管理

    如何成为linux用户?     在linux系统中,要想从系统中获取资源、对系统进行管理和控制,就需要向系统申请一个账号,从而实现特定用途,当申请到账号后,要对它设置口令,这样用户账号就申请成功了,然后可以登陆系统,当用户登陆系统时,需要通过系统的认证,认证成功后才给予授权,在用户的使用过程中还会对用户进行审计。 为什么要设置…

    Linux干货 2016-08-08
  • Linux第二周总结

    1、Linux上的文件管理命令都有哪些,其常用的使用方法及其相关示例演示。 Cp、mv、rm cp命令: copy 单源复制:cp [OPTION]… [-T] SOURCE DEST 如果DEST不存在:则事先创建此文件,并复制源文件的数据流至DEST中; 如果DEST存在: 如果DESST是非目录文件;则覆盖目标文件; 如果DEST是目录文件…

    2017-07-09
  • shell脚本编程之函数

      在编写脚本时经常会遇到某个任务需要重复使用的问题,需每次都要输入同样的代码是件挺烦人的事情,还好可以通过编写函数还简化这项工作。   函数其实就是给一段代码起个名字,在每次使用这段代码的时候可以直接使用函数名来调用就可以了。 一、创建函数   创建函数的格式有两种:   格式1:function 函数名{ &nbs…

    Linux干货 2016-01-05
  • GOPS2017全球运维大会 • 深圳站将在深圳召开!

    第六届GOPS2017全球运维大会(本次)将于2017年4月21日-22日在深圳举行,历届金牌讲师精选亮相,各种精彩等您发掘。活动家为GOPS2017全球运维大会提供在线报名!在线报名地址:https://www.huodongjia.com/event-231365274.html 大会亮点 众多国外重量级嘉宾在路上 ► 目前正在和各位大咖商榷行程中,主会…

    2017-04-10
  • 马哥教育网络班第19期+第9周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; 2、写一个脚本     (1) 获取当前主机的主机名,保存于hostname变量中;     (2) 判断此变量的值是否为localhost,如果是…

    Linux干货 2016-09-19
  • Centos 5\6的启动流程简介

     Centos 5\6的启动流程简介图如下  第三步说明:磁盘的第一个扇区512字节的前446是bootloader,与此446字节与grub Stage1的446字节是一样的,主要功能是加载/boot/grup/目录下的文件     stage1.5加载相应用的文件系统文件并识别,如ext系列使用的e2fs…

    Linux干货 2016-06-03