shell脚本中关于日期的操作

一、计算指定日期的前一天的日期

date -d "yesterday 20150401 " +%Y%m%d

二、如果获取当前日期的前一天

       date -d "yesterday" +%Y%m%d

三、计算指定日期的前几天(例如计算20190716的前10天),如果是负数的话,则会往前数

date -d "10 day ago 20190716" +%Y%m%d

  或 

date -d "10 day ago 2019-07-16" +%Y%m%d

四、计算当前日期的前几天(例如计算当前日期的前10天),如果是负数的话,则会往前数

date -d "10 day ago" +%Y%m%d

五、获取指定小时点之后的时间

date -d "20190716 12 3 hour" +"%Y%m%d%H"  # 表示2019年07月16日12点 向后移动三个小时的时间,运行结果为:2019071615

六、获取当前时间点之后的几小时的时间点

date -d "3 hour" +"%Y%m%d%H" # 表示获取当前时间点3小时之后的时间,结果精确到小时

七、获取指定时间点之后几分钟

date -d "20190716 21:15 10 minute" +"%Y%m%d%H%M" # 表示2019年07月16日21时15分在10分钟的时间点,精确到分

八、获取当前时间点之后的几分钟

date -d "10 minute" +"%Y%m%d%H%M"

九、获取本月

date +"%Y%m"

十、获取下月

date -d "1month" +"%Y%m"

十一、获取上月

date -d "-1month" +"%Y%m"

十二、获取昨天

date -d yesterday # 这样是未经过任何的格式化,比较难看

date -d yesterday +"%Y%m%d" # 这样是经过格式化的

十三、获取明天

date -d tomorrw

date -d tomorrw +"%Y%m%d"

date +%Y%m%d -d "+1 day"

date +"%Y%m%d" -d '+1 day' # 这里引号不是必须的

date +%Y%m%d --date "+1 day"

date +"%Y%m%d" --date '+1 day'

十四、指定月份

date -d 1May

十五、现在

date -d now

date

十六、获取当前时间的日期

1、date +"%Y-%m-%d"

2、date +"%F"

十七、获取当前的时间的各指标

1、date +%H #小时

2、date +%M #分钟

3、date +%S #秒

4、date +%T #时间

5、date +%w #星期

6、date -d "-1 day" +%F # 前一天

 

转载于:https://www.cnblogs.com/Gxiaobai/p/11197677.html