BASH脚本中的日历月份变量

时间:2019-05-17 17:30:20

标签: linux bash

我正在编写一个BASH脚本,该脚本调用一个API,以显示特定时间范围的指标。我计划在每月的1日在cron作业上运行脚本,API调用需要包含开始时间和结束时间,并且应为以毫秒为单位的纪元格式。可以将毫秒设置为000,因为它不需要那么具体,但API要求。

我该如何编码脚本以查看当前人类可读的时间,然后准确地看与前一个日历月正好相同的时间,然后将两个输出都转换为历元,然后在curl命令中将历元时间输入为变量?

示例:

脚本在7月1日凌晨1点运行,然后脚本了解6月1日之前的完整日历月,将两者都转换为历元,并使用变量将它们放入curl命令中。

我知道如何获取一个月前的人类可读日期,但是我不确定如何最好地将这些日期转换为纪元。

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

1 个答案:

答案 0 :(得分:1)

要使用以毫秒为单位的日期来创建变量,请执行以下操作:

ENDDATE=`date +%s%N | cut -b1-13`
STARTDATE=`date --date="1 month ago" +%s%N | cut -b1-13`

在cURL命令中使用这些变量。