From 989389fd52794f02a03506389e4b01e9c17335b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BD=B1=E8=88=9E=E8=80=85?= Date: Mon, 13 Nov 2023 11:41:26 +0800 Subject: [PATCH] Update log.go --- common/log.go | 41 ++++++++++++++++++++--------------------- 1 file changed, 20 insertions(+), 21 deletions(-) diff --git a/common/log.go b/common/log.go index e607403..1bb0204 100644 --- a/common/log.go +++ b/common/log.go @@ -2,12 +2,11 @@ package common import ( "fmt" + "github.com/fatih/color" "os" "strings" "sync" "time" - - "github.com/fatih/color" ) var Num int64 @@ -18,8 +17,8 @@ var LogSucTime int64 var LogErrTime int64 var WaitTime int64 var Silent bool +var Nocolor bool var LogWG sync.WaitGroup -var Outputfile string func init() { LogSucTime = time.Now().Unix() @@ -35,17 +34,21 @@ func LogSuccess(result string) { func SaveLog() { for result := range Results { if !Silent { - if strings.Contains(*result, "[+]") { - color.Green(*result) - } else if strings.Contains(*result, "[*]") { - color.Cyan(*result) + if Nocolor { + fmt.Println(*result) + } else { + if strings.HasPrefix(*result, "[+] InfoScan") { + color.Green(*result) + } else if strings.HasPrefix(*result, "[+]") { + color.Red(*result) + } else { + fmt.Println(*result) + } } } - if IsSave { WriteFile(*result, Outputfile) } - LogWG.Done() } } @@ -57,23 +60,19 @@ func WriteFile(result string, filename string) { fmt.Printf("Open %s error, %v\n", filename, err) return } - - defer func() { - _ = fl.Close() - }() - - if _, err := fl.Write(text); err != nil { + _, err = fl.Write(text) + fl.Close() + if err != nil { fmt.Printf("Write %s error, %v\n", filename, err) } } func LogError(errinfo interface{}) { - if WaitTime == 0 || (time.Now().Unix()-LogSucTime) > WaitTime && (time.Now().Unix()-LogErrTime) > WaitTime { - color.Red(fmt.Sprintf("Completed %v/%v %v \n", End, Num, errinfo)) - - if WaitTime != 0 { - LogErrTime = time.Now().Unix() - } + if WaitTime == 0 { + fmt.Printf("已完成 %v/%v %v \n", End, Num, errinfo) + } else if (time.Now().Unix()-LogSucTime) > WaitTime && (time.Now().Unix()-LogErrTime) > WaitTime { + fmt.Printf("已完成 %v/%v %v \n", End, Num, errinfo) + LogErrTime = time.Now().Unix() } }