如何在crontab中增加每7分钟循环执行的任务
早上看到一个粗看起来很简单的问题,“如何在crontab中增加每7分钟循环执行的任务”,下意识想不就是 */7。这么简单的问题怎么一堆回答。
先上结论,比如每7分钟,我10:40分添加的,
- 第一次执行是在10:42,而不是下意识的10:47
- 10:56最后一次执行,下一次执行是在11:00,而不是想象中的11:03
也就破坏了需求中“每7分钟”,解决办法是每分钟执行,在脚本中判断当前时间
# 获取当前时间的分钟数
current_minute=$(date +"%M")
# 判断分钟数是否是7的倍数
if (( current_minute % 7 == 0 )); then
# 如果是7的倍数,执行任务
echo $(date +"%Y-%m-%d %H:%M:%S") >> /tmp/timestamp.txt
fi
学习技术,感觉使用宝塔面板之类会更方便一点吧