我在我的网站上使用CRON UI为某些用户任务创建重新安排的时间表。 UI生成CRON格式,存储在数据库中,我正在寻找一种方法来获取Next运行时间以了解任务是否到期并相应地执行。有没有办法可以转换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
SQL
JobID, CRONSchedule
1 0 9 1-7 * 1 *
2 0 0 1 * * *
3 * 0-11 * * *
答案 0 :(得分:0)
您可以从" 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
此外,还有一个名为&#34; cronviz&#34;在下面的链接中共享可以为您提供计划的未来任务的图形视觉。
https://github.com/federatedmedia/cronviz
有一个shell脚本会返回相关时间的计划任务,您可以在下面找到:
此链接中提到了其他用法: