date命令是显示或设置系统时间与日期。 

      (1)用法:

      用法:  date [选项]  [参数]

      (2)功能:

      功能:  根据指定格式显示当前时间或设置系统时间

很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作。延时通常用于脚本执行过程中提供一段等待的时间。日期可以以多种格式去打印,也可以使用命令设置固定的格式。在类UNIX系统中,日期被存储为一个整数,其大小为自世界标准时间(UTC)1970年1月1日0时0分0秒起流逝的秒数。

      (3)选项参数:

1) <+时间日期格式>:        指定显示时使用的日期时间格式;
      2) -d<字符串>:            显示字符串所指的日期与时间,字符串前后必须加上双引号;
      3) -s<字符串>:            根据字符串来设置日期与时间;(不用加引号)

      (4)实例:

1)[root@localhost Document]# date -s 20160530           设置日期和时间(只有root权限才能设置,其他只能查看)

[root@localhost Document]# date -s
2016年 05月 30日 星期一 :: PDT
[root@localhost Document]# date -s ::
2016年 05月 30日 星期一 :: PDT

2)[root@localhost Document]# date                  查看当前时间

[root@localhost Document]# date
2016年 05月 30日 星期一 :: PDT

3)[root@localhost Document]# date 0819150511            第二种设置日期和时间的方式

[root@localhost Document]# date
2011年 08月 19日 星期五 :: PDT
[root@localhost Document]# date
2016年 05月 30日 星期一 :: PDT

4)[root@localhost Document]# date +%m%d%H%M%S        第二种显示日期的方式

[root@localhost Document]# date +%m%d%H%M%S

[root@localhost Document]# date +%y%m%d%H%M%S

5)[root@localhost Document]# date -d "+1 day" +"%y/%m/%d"        显示经过加减法过后的日期

[root@localhost Document]# date -d "1 day ago" +"%Y-%m-%d"                  //等价于date -d "-1 day ago" +"%Y-%m-%d"
--
[root@localhost Document]# date -d "1 day ago" +"%y-%m-%d"
--
[root@localhost Document]# date -d "1 month ago" +"%y/%m/%d"
//
[root@localhost Document]# date -d "+1 day" +"%y/%m/%d"
//
[root@localhost Document]# date -d "+1 month" +"%y-%m-%d"
--30

6)[root@localhost Document]# date -s "2016-05-30 09:10:10"         同时设置日期和时间

[root@localhost Document]# date -s "2016-05-30 09:10:10"
2016年 05月 30日 星期一 :: PDT
[root@localhost Document]# date -s "20160530 09:10:10"
2016年 05月 30日 星期一 :: PDT
[root@localhost Document]# date -s "09:00:00 20160530"
2016年 05月 30日 星期一 :: PDT
[root@localhost Document]# date -s "09:00:00 2016/05/30"
2016年 05月 30日 星期一 :: PDT
[root@localhost Document]# date -s "09:00:00 2016-05-30"
2016年 05月 30日 星期一 :: PDT

7)格式转换后时间游走:

[root@localhost Document]# date -d "Nov 5, 2018 09:00:00 AM 2 year ago" +"%Y-%m-%d %H:%M.%S"
-- :00.00
[root@localhost Document]# date -d "Oct 30, 2018 09:10:00 AM 2 month ago" +"5Y-%m-%d %H:%M"
5Y-- :
[root@localhost Document]# date -d "Oct 30, 2018 09:10:00 AM 2 month ago" +"%Y-%m-%d %H:%M"
-- :

8)[root@localhost Document]# echo $diff seconds        记录命令花费的时间

[root@localhost Document]# start=$(date +%s)
[root@localhost Document]# ls /home |more -
sunjimeng
[root@localhost Document]# end=$(date +%s)
[root@localhost Document]# diff=$((end-start))
[root@localhost Document]# echo $diff seconds
seconds

      (5)日期格式字符串列表
      %H 小时,24小时制(00~23)

  %I 小时,12小时制(01~12)

  %k 小时,24小时制(0~23)

  %l 小时,12小时制(1~12)

  %M 分钟(00~59)

  %p 显示出AM或PM

  %r 显示时间,12小时制(hh:mm:ss %p)

  %s 从1970年1月1日00:00:00到目前经历的秒数

  %S 显示秒(00~59)

  %T 显示时间,24小时制(hh:mm:ss)

  %X 显示时间的格式(%H:%M:%S)

  %Z 显示时区,日期域(CST)

  %a 星期的简称(Sun~Sat)

  %A 星期的全称(Sunday~Saturday)

  %h,%b 月的简称(Jan~Dec)

  %B 月的全称(January~December)

  %c 日期和时间(Tue Nov 20 14:12:58 2012)

  %d 一个月的第几天(01~31)

  %x,%D 日期(mm/dd/yy)

  %j 一年的第几天(001~366)

  %m 月份(01~12)

  %w 一个星期的第几天(0代表星期天)

  %W 一年的第几个星期(00~53,星期一为第一天)

  %y 年的最后两个数字(1999则是99)

月份的英文表示:

【January】  【February】  【March】  【April】   【May】   【June】   【July】  【August】  【September】  【October】  【November】  【December 】

最新文章

  1. Spring特性--DI
  2. Linux - History
  3. SQL中的内连接与外连接
  4. 35 个免费创新的响应式 HTML5 模板
  5. c++需要注意的地方和小算法
  6. python(5)&ndash;random模块及验证码
  7. (转,感谢原作者!)既然选择了Linux,有何必在乎这些——Linux wine国服LOL英雄联盟,完美运行!!
  8. Qt 图形特效(Graphics Effect)介绍
  9. Linux show funny time[ liunx 有趣的东西展示]
  10. Java web文件上传下载
  11. BOM—浏览器对象模型(Browser Object Model)
  12. 复杂JSON对象的查询与合并
  13. 如何优化Spring Cloud微服务注册中心架构?
  14. 非常全面的SQL Server巡检脚本来自sqlskills团队的Glenn Berry
  15. 范围for语句
  16. jasperReport和Ireport
  17. UnicodeDecodeError: &#39;ascii&#39; codec can&#39;t decode byte 0x9c in position 1: ordinal not in range(128)
  18. Vue 表格内容根据后台返回状态位填充文字
  19. .NET委托解析(异步委托)
  20. .NET框架源码解读之SSCLI编译过程简介

热门文章

  1. [1-6] 把时间当做朋友(李笑来)Chapter 6 【更多思考】 摘录
  2. 两个页面js方法兼容
  3. windows上IIS实现https,配置ssl证书
  4. HDU 4883 TIANKENG’s restaurant Bestcoder 2-1(模拟)
  5. Atitit.&#160;Object-c语言&#160;的新的特性&#160;&#160;attilax总结
  6. OpenGL/GLSL数据传递小记(2.x)(转)
  7. HDFS源码分析数据块复制选取复制源节点
  8. PHP性能:序——谈ab(Apache Bench)压力测试工具
  9. 刨根问底 HTTP 和 WebSocket 协议(下)
  10. Android DIY之路 (一) 指定区域多图片合成 放大 缩小 镜像 旋转 等(转)