package whois import ( "b612.me/staros" "github.com/likexian/whois" "github.com/spf13/cobra" "os" "time" ) var timeout int var output string func init() { Cmd.Flags().IntVarP(&timeout, "timeout", "t", 20, "超时时间") Cmd.Flags().StringVarP(&output, "output", "o", "", "输出文件夹") } var Cmd = &cobra.Command{ Use: "whois", Short: "whois查询", Long: "whois查询", Run: func(cmd *cobra.Command, args []string) { if len(args) == 0 { cmd.Help() return } if !staros.Exists(output) { cmd.Println("输出文件夹不存在,将使用标准输出") output = "" } c := whois.NewClient() c.SetTimeout(time.Second * time.Duration(timeout)) for _, v := range args { data, err := c.Whois(v) cmd.Println("Query:", v) if err != nil { cmd.Println("查询失败:", err) cmd.Println("-----------------------------------------------------") continue } cmd.Println(data) cmd.Println("-----------------------------------------------------") os.WriteFile(output+"/"+v+".txt", []byte(data), 0644) } }, }