date命令

用于显示当前的系统时间或设置系统时间。
date [选项] +[日期格式]
 

date命令的参数选项及说明

OPTION参数选项
-d 时间字符串 显示指定字符串所描述的时间,而非当前时间
-f 时间文件 从日期文件中按行读入时间描述
-r 文件 显示指定文件的最后修改时间
-s 日期时间 设置系统时间
-u 显示或设置UTC时间
FORMAT日期格式
%% 输出字符%
%a 星期名缩写(Tue代表星期二)
%A 星期名全称(Tuesday代表星期二) %b 月名缩写(Aug代表八月)
%B 月名全称(August代表八月)
%c 日期和时间(Tue 18 Aug 201502:28:22 PM CST)
%C 世纪
%d 每月的第几天
%D 等于%m/9%d/%y(08/18/15)
%e 每月的第几天
%F 完整日期格式,等价于%Y-%m-%d(2015-08-18)
%g 年份的最后两位数字(15)
%G 年份(2015)
%h 月名缩写,等于%b
%H 24小时制(00-23)
%I 12小时制(00-12)
%j 一年的第几天(001-366)
%k 24小时制(0-23),格式和%H不同
%l 12小时制(1-12)
%m 月份(01-12)
%M 分(00-59)
%n 换行
%N 纳秒(000000000-999999999)
%p “上午”或“下午”,未知时输出为空(AM/PM)
%P 与%p类似,但是输出的是小写字母(am/pm)
%r 当前时区下的12小时制时间(02:30:27PM)
%R 24小时制的时和分,等价于%H:%M(14:30)
%s 自UTC时间1970-01-0100:00:00以来所经过的秒数(1439879439)
%S 秒(00-60)
%t 输出刺表符Tab
%T 时间,等于%H:%M:%S(14:30:50)
%u 星期,1代表星期一
%U 一年中的第几周,以周日为每星期的第一天(00-53)
%V ISO-8601格式规范下一年中的第几周,以周一为每星期的第一天(01-53) %w 一星期中的第几日(0-6),0代表周一
%W 一年中的第几周,以周一为每星期的第一天(00-53)
%x 日期(08/18/2015)
%X 时间(02:31:29PM)
%y 年份的最后两位(00..99)
%Y 年份2015
%z 时区+0800
%:z 时区+08:00
%::z 时区+08:00:00
%:::z 时区+08
%Z 字母格式时区(CST)
 
 

常用时间格式测试

[root@cs6-mini ~]# date +%y
19
[root@cs6-mini ~]# date +%Y
2019
[root@cs6-mini ~]# date +%m
05
[root@cs6-mini ~]# date +%d
15
[root@cs6-mini ~]# date +%H
15
[root@cs6-mini ~]# date +%M
14
[root@cs6-mini ~]# date +%S
54
[root@cs6-mini ~]# date +%F
2019-05-15
[root@cs6-mini ~]# date +%T
15:15:08

通过参数-d显示指定字符串所描述的时间示例

[root@cs6-mini ~]# date +%F -d "-1day"
2019-05-14
[root@cs6-mini ~]# date +%F -d "yesterday"
2019-05-14
[root@cs6-mini ~]# date +%F -d "-2day"
2019-05-13
[root@cs6-mini ~]# date +%F -d "+1day"
2019-05-16
[root@cs6-mini ~]# date +%F -d "tomorrow"
2019-05-16
[root@cs6-mini ~]# date +%F -d "+2day"
2019-05-17
[root@cs6-mini ~]# date +%F -d "1month"
2019-06-15
[root@cs6-mini ~]# date +%F -d "1year"
2020-05-15
这里的+号表示未来,-号表示过去,day表示日,year表示年,month表示月。
[root@cs6-mini ~]# date +%F -d "24hour"
2019-05-16
[root@cs6-mini ~]# date +%F -d "12324min"
2019-05-24
[root@cs6-mini ~]# date +%F -d "-123min"
2019-05-15
这里的hour表示小时,min表示分。

时间格式转换例子

[root@cs6-mini ~]# date -d "Thu Jul 6  21:41:16 CST 2019" "+%Y-%m-%d %H:%M:%S"
2019-07-06 21:41:16
[root@cs6-mini ~]# vi time_test.log
[root@cs6-mini ~]# cat time_test.log
Sat May 19 13:40:02 CST 2015 is 13213213
Sat May 19 19:37:43 CST 2015 is 1012122
Sat May 19 12:40:03 CST 2015 is 13213213
sat May 19 19:37:42 CST 2015 is 1012122
Sat May 19 13:40:03 CST 2015 is 13213213
Sat May 19 19:37:03 CST 2015 is 1012122
[root@cs6-mini ~]# awk -F "is" '{print "echo $(date -d \""$1"\" \"+%F %T\")",$2}' time_test.log
echo $(date -d "Sat May 19 13:40:02 CST 2015 " "+%F %T") 13213213
echo $(date -d "Sat May 19 19:37:43 CST 2015 " "+%F %T") 1012122
echo $(date -d "Sat May 19 12:40:03 CST 2015 " "+%F %T") 13213213
echo $(date -d "sat May 19 19:37:42 CST 2015 " "+%F %T") 1012122
echo $(date -d "Sat May 19 13:40:03 CST 2015 " "+%F %T") 13213213
echo $(date -d "Sat May 19 19:37:03 CST 2015 " "+%F %T") 1012122
[root@cs6-mini ~]# awk -F "is" '{print "echo $(date -d \""$1"\" \"+%F %T\")",$2}' time_test.log |bash
2015-05-19 13:40:02 13213213
2015-05-19 19:37:43 1012122
2015-05-19 12:40:03 13213213
2015-05-19 19:37:42 1012122
2015-05-19 13:40:03 13213213
2015-05-19 19:37:03 1012122

通过参数-s设定时间

[root@cs6-mini ~]# date -s 20170505
Fri May 5 00:00:00 CST 2017
[root@cs6-mini ~]# date
Fri May 5 00:00:01 CST 2017
[root@cs6-mini ~]# date -s "00:12:23"
Fri May 5 00:12:23 CST 2017
[root@cs6-mini ~]# date -s "00:12:23 20190304"
Mon Mar 4 00:12:23 CST 2019
[root@cs6-mini ~]# date -s "00:12:23 2019-03-04"
Mon Mar 4 00:12:23 CST 2019
[root@cs6-mini ~]# date -s "00:12:23 2019/03/04"
Mon Mar 4 00:12:23 CST 2019
显示时间后换行,再显示日期。
[root@cs6-mini ~]# date +%T%n%D
00:13:08
03/04/19
[root@cs6-mini ~]# date +%D
03/04/19

5.6 date:显示与设置系统时间的更多相关文章

  1. date 显示或设置系统时间和日期

    显示或设置系统时间和日期 date [options] [+format] date [options] [new date] date用来显示系统的时间和日期,超级用户可以使用date来更改系统时钟 ...

  2. date:显示与设置系统时间

    功能: date命令用于显示当前的系统时间或设置系统时间 语法格式: date [option] [+format] date [选项] [+日期格式] 参数选项: option 参数选项: -d  ...

  3. 我使用过的Linux命令之date - 显示、修改系统日期时间

    原文地址:http://www.cnblogs.com/diyunpeng/archive/2011/11/20/2256538.html 用途说明 ate命令可以用来显示和修改系统日期时间,注意不是 ...

  4. 我使用过的Linux命令之date - 显示、修改系统日期时间(转)

    用途说明 ate命令可以用来显示和修改系统日期时间,注意不是time命令. 常用参数 格式:date 显示当前日期时间. 格式:date mmddHHMM 格式:date mmddHHMMYYYY 格 ...

  5. date - 打印或设置系统日期和时间

    总览 date [选项]... [+格式] date [选项] [MMDDhhmm[[CC]YY][.ss]] 描述 根据指定格式显示当前时间或设置系统时间. -d, --date=STRING 显示 ...

  6. linux date 设置系统时间

    设置 系统时间 注意时间格式 date  -s "date" [root@localhost c]# date -s "2019-05-29 10:58:00" ...

  7. hwclock 显示或设置CMOS时间

    显示或设置CMOS时间 hwclock [options] 选项 -r               默认选项,读取并打印CMOS时间 -s               将CMOS时间设置为系统时间 - ...

  8. linux设置系统时间

    设置系统时间 -         date命令:显示系统的时间,可以在直接输入"date"命令来查看系统的时间 -           date+%y/%m/%d -        ...

  9. QT在linux环境下读取和设置系统时间(通过system来直接调用Linux命令,注意权限问题)

    QT在Linux环境下读取和设置系统时间 本文博客链接:http://blog.csdn.NET/jdh99,作者:jdh,转载请注明. 环境: 主机:Fedora12 开发软件:QT 读取系统时间 ...

随机推荐

  1. 「HTML+CSS」--自定义加载动画【014】【疑问未解决】

    前言 Hello!小伙伴! 首先非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出- 哈哈 自我介绍一下 昵称:海轰 标签:程序猿一只|C++选手|学生 简介:因C语言结识编程,随后转入计算机 ...

  2. 「starter推荐」简单高效Excel 导出工具

    EasyExcel EasyExcel是一个基于Java的简单.省内存的读写Excel的开源项目.在尽可能节约内存的情况下支持读写百M的Excel. 64M内存1分钟内读取75M(46W行25列)的E ...

  3. 日志收集之filebeat使用介绍

    此系列文章一共分为三部分,分为filebeat部分,logstash部分,es部分.这里会按照每天几百亿条的数据量来考虑,去设计.部署.优化这个日志系统,来最大限度的利用资源,并达到一个最优的性能.本 ...

  4. Day05_20_Java中类的创建和对象的实例化

    类的创建和对象的实例化 类的定义 类属于引用数据类型,java语言中所有的.class都属于引用数据类型 在类体当中,方法体之外定义的变量被称为 成员变量,成员变量没有赋值,系统默认是0: 语法结构: ...

  5. php自定义配置文件简单写法

    1 <?php 2 header("Content-type:text/html;charset=utf-8"); 3 4 $q = getconfig('rr'); 5 e ...

  6. 【Feign】Feign ,OpenFeign以及Ribbon之间的区别?

    Ribbon Ribbon 是 Netflix开源的基于HTTP和TCP等协议负载均衡组件 Ribbon 可以用来做客户端负载均衡,调用注册中心的服务 Ribbon的使用需要代码里手动调用目标服务,请 ...

  7. adbi学习:so hook实现机制

    本篇我们来看看adbi的实现原理,其实里面的知识点前面差不多都有涉及了,没多少新知识.adbi利用hijack程序将libexample.so注入到指定的进程中,并且在进程中加载libexample. ...

  8. 渗透测试神器Cobalt Strike的使用

    目录 Cobalt Strike Cobalt Strike的安装 Cobalt Strike的使用 创建监听器:

  9. Intel汇编程序设计-整数算术指令(中)

    7.3  移位和循环移位的应用 7.3.1  多双字移位 要对扩展精度整数(长整数)进行移位操作,可把它划分为字节数组.字数组或双字数组,然后再对该数组进行移位操作.在内存中存储数字时通常采用的方式是 ...

  10. 19.Quick QML-GroupBox自定义

    GroupBox用来将子类的部件显示在其边框内部,并且一般默认左上有一个标题.GroupBox不提供自己的布局.所以需要我们自己通过ColumnLayout或者其他布局方式来进行布局.GroupBox ...