Compare commits

..

No commits in common. "d6a36c62d6125c2248220a17ef72485f42222ed8" and "e4e05b58f7d13b9f045a3a8732a7c75ec5ac7f19" have entirely different histories.

1 changed files with 16 additions and 25 deletions

View File

@ -1,7 +1,6 @@
package main package main
import ( import (
"flag"
"fmt" "fmt"
"log" "log"
"time" "time"
@ -14,9 +13,10 @@ import (
var maxRetries = 0 var maxRetries = 0
var now = time.Now() var now = time.Now()
var liveMode bool
func main() { func main() {
fmt.Println("-----------------------------------------------------------------------------------------")
fmt.Println("-----------------------------------------------------------------------------------------")
log.Println(` log.Println(`
_____ _____
_/ ____\______ ____ _____ _____ ____ __ _ _______ ____ ____ _/ ____\______ ____ _____ _____ ____ __ _ _______ ____ ____
@ -26,32 +26,23 @@ _/ ____\______ ____ _____ _____ ____ __ _ _______ ____ ____
\/ \/ \/ \//_____/ `) \/ \/ \/ \//_____/ `)
fmt.Println("-----------------------------------------------------------------------------------------") fmt.Println("-----------------------------------------------------------------------------------------")
fmt.Println("-----------------------------------------------------------------------------------------") fmt.Println("-----------------------------------------------------------------------------------------")
flag.BoolVar(&liveMode, "liveMode", false, "即时模式关闭") if maxRetries < 3 {
flag.Parse() for {
if !liveMode { remainingTime := tools.RemainingTimeUntilNextFriday17()
fmt.Println("目前时定时任务模式") if remainingTime <= 0 {
if maxRetries < 3 { break // 当剩余时间小于等于0时跳出循环
for {
remainingTime := tools.RemainingTimeUntilNextFriday17()
if remainingTime <= 0 {
break // 当剩余时间小于等于0时跳出循环
}
fmt.Printf("距离执行定时任务还剩 %d小时 %d分钟 %d秒\n", int(remainingTime.Hours()), int(remainingTime.Minutes())%60, int(remainingTime.Seconds())%60)
time.Sleep(time.Minute * 10) // 等待10分钟然后更新
} }
// 定义任务,每周五的五点执行 fmt.Printf("距离执行定时任务还剩 %d小时 %d分钟 %d秒\n", int(remainingTime.Hours()), int(remainingTime.Minutes())%60, int(remainingTime.Seconds())%60)
gocron.Every(1).Friday().At("17:00").Do(job) time.Sleep(time.Minute * 10) // 等待30分钟钟然后更新
// 开始定时任务
<-gocron.Start()
} else {
log.Fatalln("最大重试次数已到达3退出")
} }
} else { // 定义任务,每周五的五点执行
fmt.Println("目前时即时任务模式") gocron.Every(1).Friday().At("17:00").Do(job)
job() // 开始定时任务
} <-gocron.Start()
} else {
log.Fatalln("最大重试次数已到达3退出")
}
} }
func job() { func job() {