Выражение Cron с исключением определенного дня недели

#c# #cron #quartz-scheduler #cronexpression

#c# #cron #quartz-планировщик #cronexpression

Вопрос:

Я хочу создать выражение cron для своей работы, но я не знаю, как я могу исключить определенный день недели из выражения.

 triggerBuilder
       .ForJob(jobKey)
       .WithSchedule(CronScheduleBuilder.CronSchedule("????")).InTimeZone(TimeZoneInfo.Utc))
       .StartNow()
       .WithIdentity(triggerKey)
       .Build();
 

Например: я хочу увольнять свою работу каждый день, кроме понедельника.

Я нашел подход, при котором мы можем устанавливать запуск задания в полдень (12 часов дня) каждый день с интервалом:

0 0 0 ? * MON-FRI или 0 0 0 ? * 1-5

но как насчет исключения определенного дня из этого интервала, например, «Четверг».

Спасибо за помощь 🙂

Комментарии:

1. Взгляните на cronmaker.com

2. @DanielKelley, классное спасибо! Я не знаю об этом ресурсе.

Ответ №1:

Использование cronmaker.com , примером расписания Cron, которое выполняется каждый день, кроме понедельника в 12 часов дня, будет:

 0 0 12 ? * TUE,WED,THU,FRI,SAT,SUN *
 

Очевидно, что сайт позволит вам адаптировать это по мере необходимости, но, надеюсь, если сайт когда-нибудь выйдет из строя, и у кого-нибудь будет похожий пример, они смогут использовать это выражение в качестве руководства для создания своего собственного.