大家都知道,Go语言主要是用来开发后台应用的,当然了,做一些命令行小工具对于Go来说也是小菜一碟,对于命令行工具来说,解析参数是很重要的,比如
ls -l
这个命令相信大家都很熟悉了,-l 就是参数,那么要使用go语言实现一个类似的命令行小工具,改怎么解析参数呢?
在Go语言中,命令行参数主要由flag包实现,如下面的代码
var (
a string
b string
c int
d int
e bool
f bool
)
func init() {
flag.StringVar(&a, "a", "aaa", "usage for a")
flag.StringVar(&b, "b", "bb", "usage for b")
flag.IntVar(&c, "c", 1, "usage for c")
flag.IntVar(&d, "d", 2, "usage for d")
flag.BoolVar(&e, "e", true, "usage for e")
flag.BoolVar(&f, "f", false, "usage for f")
}
- 首先定义一些命令行参数名称(大家忽略变量名哈,此处仅用于说明用法,实际使用中变量不要这么命名)
- 然后在init函数中绑定