package main import ( "flag" "fmt" "os" ) func main() { port := flag.Int("port", 8080, "服务监听端口") config := flag.String("config", "./config.yaml", "配置文件路径") // 重写全局帮助信息 flag.Usage = func() { _, err := fmt.Fprintf(flag.CommandLine.Output(), "=== 服务启动工具 V1.0 ===\n\n") if err != nil { return } _, err = fmt.Fprintf(flag.CommandLine.Output(), "用法:%s [可选参数]\n\n", os.Args[0]) if err != nil { return } _, err = fmt.Fprintf(flag.CommandLine.Output(), "参数说明:\n") if err != nil { return } flag.PrintDefaults() _, err = fmt.Fprintf(flag.CommandLine.Output(), "\n使用示例:\n") if err != nil { return } _, err = fmt.Fprintf(flag.CommandLine.Output(), " %s -port=8080 -config=app.yaml\n", os.Args[0]) if err != nil { return } } flag.Parse() fmt.Printf("服务启动成功,端口:%d,配置文件:%s\n", *port, *config) }