【发布时间】:2017-03-16 07:47:53
【问题描述】:
我正在尝试使用 cron 表达式创建计划作业,但 Azure 不接受我创建的任何表达式。例如,我想开始一个从 3:30 开始每小时运行的作业
0 30 3/1 * * * *
但根据 Azure,这是无效的。根据其他网站,这是有效的。
【问题讨论】:
我正在尝试使用 cron 表达式创建计划作业,但 Azure 不接受我创建的任何表达式。例如,我想开始一个从 3:30 开始每小时运行的作业
0 30 3/1 * * * *
但根据 Azure,这是无效的。根据其他网站,这是有效的。
【问题讨论】:
您是指每天从凌晨 3:30 开始到午夜(晚上 11:30)结束的每个小时?
这应该可行:
0 30 3-23 * * *
或者从下午 3:30 到晚上 11:30:
0 30 15-23 * * *
更新:
如果您希望您的第一次运行在特定时间发生,然后每 n 分钟重复一次,那么 Azure Webjob Cron 将无济于事,我认为。它们不支持扩展语法。事实上,他们使用修改后的 ncrontab 实现,因此您可以尝试深入研究。
但是 - 如果您有特定需要在特定时间启动 cron 并无限期运行,您有多种选择:
选项 1:使用 Azure Scheduler。它有Start At Specific Time Setting
选项 2:向您的代码添加检查日期/时间,然后每 30 分钟运行一次 Cron。
【讨论】:
您可以将清除/设置禁止标志分成单独的作业:
0 30 * * * * if [ ! -e /tmp/inhibitor ] ; then job.sh ; fi
0 0 0 * * * touch /tmp/inhibitor
0 29 3 * * * rm -f /tmp/inhibitor
【讨论】: