linux - BASH 脚本中的日历月变量

标签 linux bash

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

我如何编写脚本以查看当前人类可读时间,然后查看恰好 1 个日历月前的同一时间,然后将两个输出转换为纪元,然后在 curl 命令中将纪元时间作为变量输入?

例子:

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

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

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

最佳答案

使用以毫秒为单位的纪元时间日期创建变量:

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

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

关于linux - BASH 脚本中的日历月变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56191053/

相关文章:

Bash Select 显示超过 9 个选项很奇怪

linux - 'bash -c' 有什么作用?

linux - Bash 脚本 Shell 脚本

linux - CRONTAB 在脚本中更改

通过 sysfs 访问 Linux 驱动程序

c++ - 线程超时

java - 如何在 Linux 中捕获 Java -jar 命令输出?

linux - 在 Linux 中从串口接收一个字节

linux - 复制文件 - 不是目录

linux - Ansible ec2_vpc_igw VPC 不存在