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 17:39
下一篇 2017-07-18 20:04

相关推荐

  • 帮助和文件管理信息

    history命令: -c 清空命令历史 -d offset 删除历史中指定的第offset个命令 n 显示最近的n条历史 -a 追加本次会话新执行的命令历史列表至历史文件 -n 读历史文件中未读过的行到历史列表 -r 读历史文件附加到历史列表 -w 保存历史列表到指定的历史文件 -p 展开历史参数成多行,但不存在历史列表中 -s 展开历史参数马一行。附加在…

    Linux干货 2017-04-11
  • rpm包管理

    一、概述 RPM 是RPM Package Manager(RPM软件包管理器)的缩写。由redhat公司的Redhat package manager改名而来,成了RedHat的工业标准 二、rpm的命名格式: rpm包的命名格式:name-version-relase.arch.rpm version: major.minor.release,同源代码 …

    Linux干货 2015-10-07
  • CentOS6.9系统上编译安装httpd.2.2.32

    本文所做的所有操作是在一部新安装的CentOS6.9系统上。 1.环境与配置 环境说明:VMware上安装的CentOS6.9系统,两张系统盘做成的yum源 配置:编译生成的所有的文件都存放在/usr/local/httpd22/这个目录下 2.安装GCC编译器 [root@localhost ~]# yum grouplist | grep “Develo…

    2017-04-20
  • 步入LINUX

    初次融入LINUX的环境。。。

    Linux干货 2018-03-26
  • ☞LVS

    LVS 概述 LVS工作类型 LVS NAT LVS DR(默认) Direct Routing带来的问题 限制响应模型的内核参数 LVS TUN LVS FULLNAT scheduling-method 静态调度算法 动态调度算法 CentOS 7 中的ipvs组件 安装ipvsadm程序 主要文件 ipvsadm命令 配置集群服务 NAT方法示例 DR…

    Linux干货 2016-10-26
  • 2016-10-17练习题

    1 生产环境发现一台服务器系统时间产生偏差,造成服务异常,请帮忙校正。 linux系统查看当前时间命令为date [root@Shining pirate]# date Mon Oct 17 20:50:42 CST 2016 修改系统时间选项为-s 格式为 只修改系统的日期,不修改时间 …

    Linux干货 2016-10-17