开发者社区 问答 正文

linux 下 cron定时问题:报错

需求是 每天的8-20点之间 每隔3小时零20分钟执行一次,怎么写

*/200 8-20 * * * /usr/bin/backup

这样写对吗

展开
收起
kun坤 2020-06-14 09:00:17 474 分享 版权
阿里云 AI 助理回答

您的cron表达式写法不完全正确,根据您的需求(每天8-20点之间,每隔3小时零20分钟执行一次),正确的cron表达式应该是这样的:

20 8-17/3 * * * /usr/bin/backup

这里解释一下这个cron表达式的含义: - 20: 指定每个小时的第20分钟开始执行。 - 8-17/3: 表示从第8小时到第17小时(即8点到17点),每隔3小时执行。注意,由于您希望在20点也执行一次,但直接使用8-20/3会包括20点,而实际上我们只需要覆盖到19点的最后一轮执行即可,因为20点是不需要再隔3小时的。所以用8-17/3确保了8点、11点、14点、17点各执行一次。 - * * *: 对于月份、日期和星期的字段,*表示任何值,意味着每个月的每一天都适用。 - /usr/bin/backup: 这是您要执行的命令或脚本路径。

综上所述,这个cron表达式会在每天的8:20、11:20、14:20、17:20自动执行/usr/bin/backup任务,满足了您提出的在8点至20点之间每隔3小时零20分钟执行一次的需求。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答