Files
bulma/flag/visit_flags.go

27 lines
680 B
Go

package main
import (
"flag"
"fmt"
)
func main() {
// 定义基础参数
flag.Int("port", 8080, "服务监听端口")
flag.String("host", "localhost", "服务绑定主机")
flag.Bool("debug", false, "开启调试模式")
// 解析参数
flag.Parse()
fmt.Println("=== 所有已定义参数(含默认值)===")
flag.VisitAll(func(f *flag.Flag) {
fmt.Printf("参数名:%-10s 默认值:%-10s 说明:%s\n", f.Name, f.DefValue, f.Usage)
})
fmt.Println("\n=== 用户主动传入的参数===")
flag.Visit(func(f *flag.Flag) {
fmt.Printf("参数名:%-10s 当前值:%-10s 已修改:%v\n", f.Name, f.Value.String(), f.Value.String() != f.DefValue)
})
}