1. flag包简介

golang 提供了 flag 包来支持基本的命令行参数解析。命令行参数常用来为命令行程序指定选项。比如在 wc -l 命令中 -l 就是命令行参数。

命令行语法:

定义 flag 参数:

1) 通过flag.String(), Bool(), Int()flag.Xxx()方法,该种方式返回一个相应的指针:

2) 通过flag.XxxVar()方法将flag绑定到一个变量,该种方式返回值类型,如:

3) 通过flag.Var()绑定自定义类型,自定义类型需要实现Value接口(Receives必须为指针),如

解析: 调用flag.Parse()解析命令行参数到定义的flag

其他:通过 flag.Args(), flag.Arg(i) 来获取非 flag 命令行参数

2. 使用示例

运行结果: