算出cron表达式接下来几次执行时间


1.使用cron库

  1. 需要使用的go库:【点击跳转】。
  2. 具体使用方法可以参照例子使用,下面主要实现计算接下来几次cron表达式执行时间。
package main

import (
	"flag"
	"fmt"
	"log"
	"time"

	"github.com/robfig/cron"
)

func main() {
	spec := flag.String("s", "* * * * * *", "cron spec")
	next := flag.Uint("i", 5, "cron next times")
	flag.Parse()

	p, err := cron.Parse(*spec)
	if err != nil {
		log.Fatal(err)
	}
	t := time.Now()
	for i := int(*next); i > 0; i-- {
		t = p.Next(t)
		fmt.Println(t.String())
	}
}

下面是执行结果:
cron.exe -s "20 10 1 * * *" -i 2
2019-09-11 01:10:20 +0800 CST
2019-09-12 01:10:20 +0800 CST

2.总结

    工作中很多时候需要验证自己写的cron表达式是否正确,可以用上面的方法来测试。当然网上有很多在线网站也是可以做到的。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM