设为首页 - 加入收藏 抚州站长网 (http://www.0794zz.com)- 国内知名站长资讯网站,提供最新最全的站长资讯,创业经验,网站建设等!
热搜: javascript vivo 2018 2008
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

详解Linux环境shell脚本获取时间的常用命令总结

发布时间:2019-10-28 03:12 所属栏目:[Windows] 来源:波波说运维
导读:前面已经介绍了windows环境关于时间的常用命令总结,今天主要分享下linux环境shell脚本常用的一些获取时间命令。 1. 相关概念 Linux的系统时间在shell里是可以直接调用系统变量date的,如: 获取今天时期:`date+%Y%m%d`或`date+%F`或$(date+%y%m%d) 获取昨

前面已经介绍了windows环境关于时间的常用命令总结,今天主要分享下linux环境shell脚本常用的一些获取时间命令。

1. 相关概念

Linux的系统时间在shell里是可以直接调用系统变量date的,如:

  1. 获取今天时期:`date?+%Y%m%d`?或?`date?+%F`?或?$(date?+%y%m%d)?
  2. 获取昨天时期:`date?-d?yesterday?+%Y%m%d`?也可以写成`date?-d?-1day?+%Y%m%d`?
  3. 获取前天日期:`date?-d?-2day?+%Y%m%d`?
  4. 获取10天前的日期:`date?-d?-10day?+%Y%m%d`?
  5. 或n天前的:?`date?-d?"n?days?ago"?+%y%m%d`?
  6. 获取明天日期:`date?-d?tomorrow?+%y%m%d`?
  7. 获取上个月日期:date?-d?last-month?+%Y%m??
  8. 获取下个月日期:date?-d?next-month?+%Y%m?

至于你需要什么样的日期时间格式,就需要应用相关的时间域参数来实现了:

相关时间域如下:

  1. %?H?小时(00..23)?
  2. %?I?小时(01..12)?
  3. %?k?小时(0..23)?
  4. %?l?小时(1..12)?
  5. %?M?分(00..59)?
  6. %?p?显示出AM或PM?
  7. %?r?时间(hh:mm:ss?AM或PM),12小时?
  8. %?s?从1970年1月1日00:00:00到目前经历的秒数?
  9. %?S?秒(00..59)?
  10. %?T?时间(24小时制)(hh:mm:ss)?
  11. %?X?显示时间的格式(%H:%M:%S)?
  12. %?Z?时区?日期域?
  13. %?a?星期几的简称(?Sun..Sat)?
  14. %?A?星期几的全称(?Sunday..Saturday)?
  15. %?b?月的简称(Jan..Dec)?
  16. %?B?月的全称(January..December)?
  17. %?c?日期和时间(?Mon?Nov?8?14:12:46?CST?1999)?
  18. %?d?一个月的第几天(01..31)?
  19. %?D?日期(mm/dd/yy)?
  20. %?h?和%b选项相同?
  21. %?j?一年的第几天(001..366)?
  22. %?m?月(01..12)?
  23. %?w?一个星期的第几天(0代表星期天)?
  24. %?W?一年的第几个星期(00..53,星期一为第一天)?
  25. %?x?显示日期的格式(mm/dd/yy)?
  26. %?y?年的最后两个数字(?1999则是99)?
  27. %?Y?年(例如:1970,1996等)?
  28. %F?输出日期为2019-10-20?这种格式的日期?

注意:只有超级用户才有权限使用date命令设置时间,一般用户只能使用date命令显示时间。

2. 获取时间脚本--DateTime.sh

  1. #!/bin/bash?
  2. echo?"==================================================="?
  3. echo?"show?linux?original?format?date?and?time:"?
  4. echo?DateTime:?$(date)?
  5. echo?"==================================================="?
  6. echo?"show?date?time?like?format:?YYYY-MM-DD?HH:MM:SS"?
  7. NOW_DATE_TIME=$(date?"+%Y-%m-%d?%H:%M:%S")?
  8. echo?$NOW_DATE_TIME?
  9. echo?"==================================================="?
  10. ??
  11. echo?"show?date?time?like?format:?YYYYMMDD-HHMMSS"?
  12. NOW_TIME=$(date?"+%Y%m%d-%H%M%S")?
  13. echo?$NOW_TIME?
  14. echo?"==================================================="?
  15. ??
  16. echo?"show?last?year:"?
  17. LAST_YEAR=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="-1?years")?
  18. echo?$LAST_YEAR?
  19. echo?"==================================================="?
  20. ??
  21. echo?"show?next?year:"?
  22. NEXT_YEAR=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="1?years")?
  23. echo?$NEXT_YEAR?
  24. echo?"==================================================="?
  25. ??
  26. echo?"show?last?month:"?
  27. LAST_MONTH=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="-1?months")?
  28. echo?$LAST_MONTH?
  29. echo?"==================================================="?
  30. ??
  31. echo?"show?next?month:"?
  32. NEXT_MONTH=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="1?months")?
  33. echo?$NEXT_MONTH?
  34. echo?"==================================================="?
  35. ??
  36. echo?"show?last?day:"?
  37. LAST_DAY=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="-1?days")?
  38. echo?$LAST_DAY?
  39. echo?"==================================================="?
  40. ??
  41. echo?"show?next?day:"?
  42. NEXT_DAY=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="1?days")?
  43. echo?$NEXT_DAY?
  44. echo?"==================================================="?
  45. ??
  46. echo?"show?last?hour:"?
  47. LAST_HOUR=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="-1?hours")?
  48. echo?$LAST_HOUR?
  49. echo?"==================================================="?
  50. ??
  51. echo?"show?next?hour:"?
  52. NEXT_HOUR=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="1?hours")?
  53. echo?$NEXT_HOUR?
  54. echo?"==================================================="?
  55. ??
  56. echo?"show?last?minute:"?
  57. LAST_MINUTE=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="-1?minutes")?
  58. echo?$LAST_MINUTE?
  59. echo?"==================================================="?
  60. ??
  61. echo?"show?next?minute:"?
  62. NEXT_MINUTE=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="1?minutes")?
  63. echo?$NEXT_MINUTE?
  64. echo?"==================================================="?
  65. ??
  66. echo?"show?last?second:"?
  67. LAST_SECOND=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="-1?seconds")?
  68. echo?$LAST_SECOND?
  69. echo?"==================================================="?
  70. ??
  71. echo?"show?next?second:"?
  72. NEXT_SECOND=$(date?"+%Y-%m-%d?%H:%M:%S"?--date="1?seconds")?
  73. echo?$NEXT_SECOND?
  74. echo?"==================================================="?

详解linux环境shell脚本获取时间的常用命令总结

【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

网友评论
推荐文章