【发布时间】:2013-06-12 11:05:14
【问题描述】:
我正在尝试设置一个 cron 作业,它每 10 分钟运行一次,但应该在 12:15 到 12:45 之间停止准确的 30 分钟(错过三个运行)(不应该运行 12:20、12:30、 12:40),因为在此期间将运行其他作业,可能会与此冲突。
是否有可能在一个 cron 作业表达式中实现这一点?
【问题讨论】:
标签: cron cronexpression
我正在尝试设置一个 cron 作业,它每 10 分钟运行一次,但应该在 12:15 到 12:45 之间停止准确的 30 分钟(错过三个运行)(不应该运行 12:20、12:30、 12:40),因为在此期间将运行其他作业,可能会与此冲突。
是否有可能在一个 cron 作业表达式中实现这一点?
【问题讨论】:
标签: cron cronexpression
我假设你的 cronjob 表达式是这样的
*/10 * * * * job
在这种情况下:不,不可能在一个 cron 作业表达式中这样做。
您可以做的是在脚本中添加一个条件,首先检查时间,如果它在 {12.15 - 12.45} 间隔内则退出。
要不然你最好改成:
0,10,50 0 * * * job
*/10 1-23 * * * job
【讨论】:
一开始我误解了这个问题,不,这不能用一个工作表达来完成。
另请参阅系统上的 man 5 crontab。
【讨论】: