日期范围增量

日期范围增量

我想创建一个日期范围,供提取日志并保存到存储的工作人员使用,提取完成后,我想将范围增加一个月,以便新的数据范围将用于运行工人。

从本质上讲我想要实现的目标

  • 开始日期=2020-01-01T15:04:05Z

  • 结束日期=2020-02-01T15:04:05Z

  • 运行工人

  • 工人在规定的时间内完成

  • 增加范围以覆盖另一个月份范围

  • 为新范围运行工人。

答案1

这是一个使用您的工作人员而不是 echo 的示例。

#!/bin/bash

DateMin=$(date -d "2020-01-01 00:00:00Z" +%s)
DateMax=$(date -d "2020-12-31 23:59:59Z" +%s)

DateCurrent=$DateMin
while [ $DateCurrent -lt $DateMax ]
do
    TempMin=$(date -d @$DateCurrent --iso-8601=seconds)
    TempMax=$(date -d "$TempMin + 1 month - 1 day" +%s)
    echo $TempMin $(date -d @$TempMax --iso-8601=seconds)
    DateCurrent=$(date -d "$(date -d @$TempMax --iso-8601=seconds) + 1 day" +%s)
done

相关内容