我需要cron表达式,它允许我通过以下规则运行调度程序:
Starts 12:00 am on Friday (pacific time)
ends 12:00 am on Saturday (pacific time)
And between these two dates it must occurs every hour
我可以写一些像"0 0 12/1 ? * FRI-SAT"
这样的东西但是当然不正确。
如何设置从12-00 FRI到12-00 SAT的简单范围?
答案 0 :(得分:2)
答案 1 :(得分:1)
我猜你可能需要设置两个触发器,一个从星期五中午12:00开始,到午夜结束,每小时触发一个星期六,从星期六00:00开始,到12点结束:下午00点。像这样的东西
0 0 12-23 ? * FRI
0 0 0-12 ? * SAT
Cron Trigger Tutorial
的修改
另请查看Cron Maker,因为它会为您生成cron表达式。并且还会显示何时会触发。
答案 2 :(得分:0)
如果cron表达式不易识别,您可以随时构建自己的触发器。
我认为这样的事情可能有所帮助:
var jobDetail;
var days = new DayOfWeek[] {DayOfWeek.Friday, DayOfWeek.Saturday};
var trigger = TriggerBuilder.Create()
.ForJob(jobDetail)
.WithDailyTimeIntervalSchedule(x => x.WithIntervalInHours(1)
.OnDaysOfTheWeek(days)
.StartingDailyAt(TimeOfDay.HourAndMinuteOfDay(0, 0)));