MCPcopy Create free account
hub / github.com/V2RaySSR/RealityChecker / Execute

Method Execute

internal/cmd/root.go:65–115  ·  view source on GitHub ↗

Execute 执行命令

()

Source from the content-addressed store, hash-verified

63
64// Execute 执行命令
65func (r *RootCmd) Execute() {
66 defer r.cleanup()
67
68 if len(os.Args) < 2 {
69 ui.PrintUsage()
70 os.Exit(1)
71 }
72
73 switch os.Args[1] {
74 case "check":
75 if len(os.Args) < 3 {
76 ui.PrintErrorWithDetails(
77 "错误:缺少域名参数",
78 "用法: reality-checker check <domain>",
79 "示例: reality-checker check apple.com",
80 )
81 os.Exit(1)
82 }
83 r.executeCheck(os.Args[2])
84 case "batch":
85 if len(os.Args) < 3 {
86 ui.PrintErrorWithDetails(
87 "错误:缺少域名参数",
88 "用法: reality-checker batch <domain1> <domain2> <domain3> ...",
89 "示例: reality-checker batch apple.com google.com microsoft.com",
90 )
91 os.Exit(1)
92 }
93 // 将所有参数(除了命令名)合并为空格分隔的字符串
94 domainsStr := strings.Join(os.Args[2:], " ")
95 r.executeBatch(domainsStr)
96 case "csv":
97 if len(os.Args) < 3 {
98 ui.PrintErrorWithDetails(
99 "错误:缺少CSV文件参数",
100 "用法: reality-checker csv <csv_file>",
101 "示例: reality-checker csv domains.csv",
102 )
103 os.Exit(1)
104 }
105 r.executeCSV(os.Args[2])
106 case "version", "-v", "--version":
107 r.showVersion()
108 default:
109 ui.PrintErrorWithDetails(
110 fmt.Sprintf("错误:未知命令 '%s'", os.Args[1]),
111 "可用命令: check, batch, csv, version",
112 )
113 os.Exit(1)
114 }
115}
116
117// showVersion 显示版本信息
118func (r *RootCmd) showVersion() {

Callers 1

mainFunction · 0.95

Calls 7

cleanupMethod · 0.95
executeCheckMethod · 0.95
executeBatchMethod · 0.95
executeCSVMethod · 0.95
showVersionMethod · 0.95
PrintUsageFunction · 0.92
PrintErrorWithDetailsFunction · 0.92

Tested by

no test coverage detected