gpt4 book ai didi

sql - 计算 SQL 中 CRON 表达式的下一次运行时间

转载 作者:行者123 更新时间:2023-12-04 16:07:05 48 4
gpt4 key购买 nike

我正在使用 CRON UI在我的网站上为某些用户任务创建重复发生的计划。 UI 生成存储在数据库中的 CRON 格式,我正在寻找一种方法来获取下一个运行时间以了解任务是否到期并相应地执行。有没有办法可以转换 CRON 格式以获取 SQL 中的下一个运行时间?

0 9 1-7 * 1 *                       First Monday of each month, at 9 a.m.
0 0 1 * * * At midnight, on the first day of each month
* 0-11 * * * Each minute before midday


JobID, CRONSchedule
1 0 9 1-7 * 1 *
2 0 0 1 * * *
3 * 0-11 * * *

SQL
Select JobID, CRONSchedule, NextRunTime from TABLE

最佳答案

您可以从“cron-converter”库中受益。

安装:

npm install cron-converter --save
bower install cron-converter --save

用法:
var Cron = require('cron-converter');
var cronInstance = new Cron();
cronInstance.fromString(<your_schedule>);
var schedule = cronInstance.schedule(); --today's date

var schedule = cronInstance.schedule();

//Optional - denife a specific date
var reference = new Date(2013, 2, 8, 9, 32);
reference = moment([2013, 2, 8, 9, 32]);
schedule = cronInstance.schedule(reference);

console.log(schedule.next().format()); //returns next schedule date

引用: https://www.npmjs.com/package/cron-converter

此外,以下链接中共享的名为“cronviz”的工具可以为您提供计划的 future 任务的图形视觉效果。

https://github.com/federatedmedia/cronviz

有一个 shell 脚本会为您返回相关时间的计划任务,您可以在下面找到:

https://unix.stackexchange.com/questions/175828/get-chronological-list-of-dates-times-for-scheduled-tasks-in-cron

此链接中提到了其他用法:

Calculate when a cron job will be executed then next time

关于sql - 计算 SQL 中 CRON 表达式的下一次运行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35158194/

48 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com