Golang 命令行参数解析:flag 包使用教程
在 Go 中,我们可以使用标准库 flag 来获取命令行的 flag 参数。以下是一个简单的示例:
package main
import (
"flag"
"fmt"
)
func main() {
var name string
var age int
var married bool
flag.StringVar(&name, 'name', "", '姓名')
flag.IntVar(&age, 'age', 0, '年龄')
flag.BoolVar(&married, 'married', false, '婚否')
flag.Parse()
fmt.Println('姓名:', name)
fmt.Println('年龄:', age)
fmt.Println('婚否:', married)
}
在上面的示例中,我们定义了三个变量 name、age 和 married,分别表示姓名、年龄和婚姻状态。然后,我们使用 flag.StringVar、flag.IntVar 和 flag.BoolVar 函数来将这些变量绑定到对应的命令行 flag 参数上。例如,flag.StringVar(&name, 'name', "", '姓名') 表示将 name 变量绑定到名为 name 的命令行 flag 参数上,并设置默认值为空字符串,描述为 '姓名'。
最后,我们使用 flag.Parse() 函数来解析命令行参数,并将它们赋值给对应的变量。然后,我们就可以在程序中使用这些变量了。例如,fmt.Println('姓名:', name) 就可以输出姓名的值。如果在命令行中指定了相应的 flag 参数,那么这些变量的值就会被更新为命令行参数的值。例如,go run main.go -name '张三' -age 20 -married=true 就会输出:
姓名: 张三
年龄: 20
婚否: true
原文地址: https://www.cveoy.top/t/topic/nPe2 著作权归作者所有。请勿转载和采集!