golang启动定时任务(robfig/cron/v3)
2025-11-07 来源:胡子哥c := cron.New()c.AddFunc(fmt.Sprintf("*/%s * * * *", viper.GetString("base.interval")), func() { fmt.Println("Run:", time.Now().Unix()) Run(all, configStruct) }) c.AddFunc(fmt.Sprintf("* */%s * * *", viper.GetString("base.intervalSSL")), func() { fmt.Println("Run:", time.Now().Unix()) Run2(all, configStruct) }) c.Start()select {}
c := cron.New(cron.WithSeconds()) //启动秒级别
示例:
* * * * * //每分钟执行
00 */3 * * * //每隔3小时执行
10 03 * * * //每天凌晨3点10分(00:10)执行
00 02 * * 7 //每周日凌晨2:00 执行
00 02 14 2 7 //每年2月14日凌晨2:00 或 每周日凌晨2:00 执行(最后一位0和7 都表示周日)
00 02 2,5,8 * * //每月2,5,8号的2:00 执行
00 02 1-8 * * //每月1到8号的凌晨2:00 执行
每隔一段时间还有这种写法
| 符号 | 说明 | 示例 |
|---|---|---|
| @yearly | 每年执行 | |
| @monthly | 每月执行 | |
| @weekly | 每周执行 | |
| @daily | 每天执行 | |
| @hourly | 每小时执行 | |
| @every | 指定间隔 | "@every 1h25m" |
下一篇:
腾讯CNB克隆仓库批处理
胡子哥博客
最新评论