簡體   English   中英

如何使用cron運行年度定期作業

[英]how to run yearly recurring job using cron

Hangfire正在使用ncrontab運行定期作業。

下面的contab 僅在2017年的每周一上午12點運行嗎?

0 0 * * 1

我如何確保它僅在2017年或每年運行?

Hangfire使用NCrontab庫。 如您所見,此庫提供了一種快速測試其自身功能的方法。 只需在Visual Studio中打開C# Interactive窗口,然后粘貼如下代碼:

#r "C:\Users\YOUR_USER\.nuget\packages\ncrontab\3.3.0\lib\netstandard1.0\NCrontab.dll"
using NCrontab;
var s = CrontabSchedule.Parse("0 0 * * 1");
var start = new DateTime(2000, 1, 1);
var end = start.AddYears(12);
var occurrences = s.GetNextOccurrences(start, end);
Console.WriteLine(string.Join(Environment.NewLine, 
    from t in occurrences
    select $"{t:ddd, dd MMM yyyy HH:mm}"));

另一種方法是使用在線crontab可視化工具。 例如: cron.schlitt.info

兩種工具都給出相同的結果:cron表達式的意思是“永遠在每個星期一運行”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM