我使用 Node.js 中的 cron-parser 库来处理应用程序中的 cron 调度。我有一个要求,我需要设置一个每两周运行一次的 cron 作业,特别是在星期一和星期日。
我查看了 cron-parser 的文档,但找不到对此类计划的任何直接支持。该库似乎遵循标准 cron 语法。有没有办法配置 cron-parser 以实现每两周一次的模式,同时针对特定的工作日?
对于上下文,我当前的方法涉及解析自定义时间表格式,例如 (7,1)/2,其中 7 代表星期日,1 代表星期一。这种方法有效,但我想知道是否有更干净或更标准的方法来使用 cron-parser 来实现此目的。
这是我的代码的相关部分:
const parser = require('cron-parser');
// Custom schedule format: (7,1)/2 (for Sundays and Mondays every two weeks)
const scheduleData = '(7,1)/2';
const interval = parser.parseExpression(scheduleData, {
// ...
});
任何实现此类时间表的见解、建议或替代方法将不胜感激!
因为我需要 Node js 并且我正在使用 cron-parser 我所做的是创建一个自定义 cron
1 10 * * [1,7] 2(this is n week)
然后我分裂了
" "
取元素的索引 5 来取第 n 周
我也使用dayjs,所以我使用weekOfYear插件(https://day.js.org/docs/en/plugin/week-of-year)来获取我当前所在的周数并检查周数% n 为 0 那么我们应该将 cron 格式化为
1 10 * * 1,7
,这是有效的 cron,我们可以使用 parseExpression
的 cron-parser
检查我们是否应该运行