我每隔 15 分钟就会接收一次卫星数据。 我正在调用脚本 日期-d“-15 分钟” */15 * * * * myscript.sh 但有时,卫星可能会延迟 3-10 分钟。 在这种情况下,我(myscript.sh)无法捕获该文件。
#那么,有什么解决方案可以使用日期选项或任何选项来选择过去 15 分钟的倍数吗?
最佳答案
如果您需要每 15 分钟运行一次脚本
您可以获取带有日期“+%s”的当前 unix 时间戳,通过一些简单的数学运算找到当前刻钟(我的示例是在 bash 中),然后以更好的日期格式将其打印回来:
curdate=`date "+%s"`
curquarter=$(($curdate - ($curdate % (15 * 60))))
date -d"@$curquarter"
从时间戳设置当前日期和时间的 @ 语法是 GNU 的 date 扩展,如果它在您的操作系统上不起作用,您可以这样做(不要忘记指定 UTC,否则它将不起作用):
date -d"1970-01-01 $curquarter seconds UTC"
关于linux - 从 datetime.now 算起已过去 15 分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54512413/