diff --git a/flag/Arg.md b/flag/Arg.md index 73e2fa4b..d9aeffb3 100644 --- a/flag/Arg.md +++ b/flag/Arg.md @@ -7,7 +7,7 @@ - string 第i+1个非flag命令行参数的值 功能说明 -- 获取第i+1个非flag命令行参数的值,使用前需要先调用`flag.Parse()`解析flag +- 获取第i+1个非flag命令行参数的值,使用前需要先调用`flag.Parse()`解析flag,底层实际调用了全局变量CommandLine的Arg函数 代码示例1 diff --git a/flag/Args.md b/flag/Args.md index 6ffee2dd..e774a073 100644 --- a/flag/Args.md +++ b/flag/Args.md @@ -6,7 +6,7 @@ - []string 非flag命令行参数集合 功能说明 -- 获取非flag命令行参数集合,使用前需要先调用`flag.Parse`解析flag +- 获取非flag命令行参数集合,使用前需要先调用`flag.Parse`解析flag,底层实际调用了全局变量CommandLine的Args函数 代码示例1 diff --git a/flag/Bool.md b/flag/Bool.md index fccb6506..1d29f70d 100644 --- a/flag/Bool.md +++ b/flag/Bool.md @@ -3,13 +3,13 @@ 参数列表 - name string 命令行flag名称 - value bool 默认值 -- usage string 当设置命令行标签不合法时的提示语 +- usage string 帮助信息 返回值 - *bool 返回一个bool类型的flag值的地址 功能说明 -- 定义一个带默认值和提示语句的bool类型flag,返回flag对应值的地址 +- 定义一个带默认值和提示语句的bool类型flag,返回flag对应值的地址,底层实际调用了全局变量CommandLine的Bool方法 代码示例 diff --git a/flag/BoolVar.md b/flag/BoolVar.md index 0b7a5ac8..d60ed9c3 100644 --- a/flag/BoolVar.md +++ b/flag/BoolVar.md @@ -9,7 +9,7 @@ 返回值 功能说明 -将命令行指定flag值绑定到一个bool变量 +- 将指定flag值绑定到一个bool变量,底层实际调用了全局变量CommandLine的BoolVar函数 代码示例 diff --git a/flag/FlagSetFloat64Var.md b/flag/FlagSetFloat64Var.md index 79caf42d..f4abf317 100644 --- a/flag/FlagSetFloat64Var.md +++ b/flag/FlagSetFloat64Var.md @@ -47,6 +47,6 @@ 代码输出 -./testflagsetfloat64 -float64Flag 2.718e+31 -float64Var -12.78 + // ./testflagsetfloat64 + float64Flag 2.718e+31 + float64Var -12.78 diff --git a/flag/FlagSetInt64.md b/flag/FlagSetInt64.md new file mode 100644 index 00000000..7792b2dc --- /dev/null +++ b/flag/FlagSetInt64.md @@ -0,0 +1,52 @@ +## func (f *FlagSet) Int64(name string, value int64, usage string) *int64 + +参数列表 +- name string flag名称 +- value int64 变量默认值 +- usage string 提示信息 + +返回值 +- *int64 返回一个int64类型的变量的地址 + +功能说明 +- 为flag集合f增加爱一个带默认值和提示语句的int64类型flag,返回flag对应变量值的地址 + +代码示例 + + package main + + import ( + "flag" + "fmt" + ) + + const ( + defaultUsage = "help message" + ) + + var ( + myFlagSet = flag.NewFlagSet("newflagset", flag.ExitOnError) + int64Flag = myFlagSet.Int64("int64Flag", 100, defaultUsage) + int64Var int64 + ) + + func init() { + myFlagSet.Int64Var(&int64Var, "int64Var", 20, defaultUsage) + } + + func main() { + args := []string{ + "--int64Flag", "22", + "-int64Var", "-10", + "arg2", + } + myFlagSet.Parse(args) + fmt.Println("int64Flag", *int64Flag) + fmt.Println("int64Var", int64Var) + } + +代码输出 + + // ./testflagsetint64 + int64Flag 22 + int64Var -10 diff --git a/flag/FlagSetInt64Var.md b/flag/FlagSetInt64Var.md new file mode 100644 index 00000000..3194f65d --- /dev/null +++ b/flag/FlagSetInt64Var.md @@ -0,0 +1,55 @@ +## func (f *FlagSet) Int64Var(p *int64, name string, value int64, usage string) + +参数列表 +- p *int64 需要与flag参数值绑定的变量地址 +- name string flag名称 +- value int 变量默认值 +- usage string 提示信息 + +返回值 + +功能说明 +- 将f中指定flag参数值绑定到int64变量 + +功能说明 +- 为flag集合f增加爱一个带默认值和提示语句的int64类型flag,返回flag对应变量值的地址 + +代码示例 + + package main + + import ( + "flag" + "fmt" + ) + + const ( + defaultUsage = "help message" + ) + + var ( + myFlagSet = flag.NewFlagSet("newflagset", flag.ExitOnError) + int64Flag = myFlagSet.Int64("int64Flag", 100, defaultUsage) + int64Var int64 + ) + + func init() { + myFlagSet.Int64Var(&int64Var, "int64Var", 20, defaultUsage) + } + + func main() { + args := []string{ + "--int64Flag", "22", + "-int64Var", "-10", + "arg2", + } + myFlagSet.Parse(args) + fmt.Println("int64Flag", *int64Flag) + fmt.Println("int64Var", int64Var) + } + +代码输出 + + // ./testflagsetint64 + int64Flag 22 + int64Var -10 diff --git a/flag/FlagSetIntVar.md b/flag/FlagSetIntVar.md index 19a814c0..0e4d2208 100644 --- a/flag/FlagSetIntVar.md +++ b/flag/FlagSetIntVar.md @@ -9,7 +9,7 @@ 返回值 功能说明 -- 将f中指定flag参数值绑定到int变量 +- 将f中指定flag参数值绑定到int64变量 代码示例 diff --git a/flag/FlagSetNArg.md b/flag/FlagSetNArg.md index 8066ff25..6a8981dd 100644 --- a/flag/FlagSetNArg.md +++ b/flag/FlagSetNArg.md @@ -6,7 +6,7 @@ - int 返回解析后剩余的参数的数量 功能说明 -- 获取输入参数解析后剩余的参数的数量,即fmt.Args()返回的值的元素个数 +- 获取输入参数解析后剩余的参数的数量,即f.Args()返回的值的元素个数 示例 diff --git a/flag/FlagSetParse.md b/flag/FlagSetParse.md index 0c380013..56d8e24a 100644 --- a/flag/FlagSetParse.md +++ b/flag/FlagSetParse.md @@ -6,7 +6,7 @@ 返回值 功能说明 -- 从argumets中依次解析flag,在定义flag之后,必须调用用本函数才能成功获取arguments中设置的flag的值 +- 从argumets中依次解析flag.在定义flag之后,必须调用用本函数才能成功获取arguments中设置的flag的值 示例 diff --git a/flag/FlagSetParsed.md b/flag/FlagSetParsed.md index f8b311f2..bad4ae2b 100644 --- a/flag/FlagSetParsed.md +++ b/flag/FlagSetParsed.md @@ -3,10 +3,10 @@ 参数列表 返回值 -- bool 若flag已解析,返回true +- bool 若flag设置参数已解析(已调用f.Parse()方法),返回true 功能说明 -- 判断flag是否已经解析,若已解析返回true +- 判断flag设置参数是否已经解析(是否已调用f.Parse()方法),若已解析返回true 示例 diff --git a/flag/FlagSetSet.md b/flag/FlagSetSet.md index e1db7afc..52ec054d 100644 --- a/flag/FlagSetSet.md +++ b/flag/FlagSetSet.md @@ -11,7 +11,7 @@ - error 设置成功返回nil 功能说明 -- 修改指定flag的值 +- 修改指定flag的值,成功返回nil 示例 diff --git a/flag/FlagSetVar.md b/flag/FlagSetVar.md index 5db7bc36..1618be9a 100644 --- a/flag/FlagSetVar.md +++ b/flag/FlagSetVar.md @@ -64,5 +64,7 @@ } 运行结果 + // ./testflagsetvar [1h1m0s 72h0m0s 1m20s] + \ No newline at end of file diff --git a/flag/Int64Var.md b/flag/Int64Var.md index f76d0e7f..565c02cd 100644 --- a/flag/Int64Var.md +++ b/flag/Int64Var.md @@ -9,7 +9,7 @@ 返回值 功能说明 -- 将命令行指定flag参数值绑定到int64变量 +- 将指定flag参数值绑定到int64变量 示例 diff --git a/flag/NArg.md b/flag/NArg.md index 457da112..4faf26d1 100644 --- a/flag/NArg.md +++ b/flag/NArg.md @@ -1,4 +1,4 @@ -## func func NArg() int +## func NArg() int 参数列表 @@ -6,7 +6,7 @@ - int 返回解析后剩余的参数的数量 功能说明 -- 获取命令行参数解析后剩余的参数的数量,即fmt.Args()返回的值的元素个数 +- 获取命令行参数解析后剩余的参数的数量,即flag.Args()返回的值的元素个数 示例 diff --git a/flag/Parse.md b/flag/Parse.md index 3f257ef6..d73d724e 100644 --- a/flag/Parse.md +++ b/flag/Parse.md @@ -5,7 +5,7 @@ 返回值 功能说明 -- 从os.Args[1:]中依次解析flag,在定义flag之后,必须调用用本函数才能成功获取命令行flag的值 +- 从os.Args[1:]中依次解析flag.在定义flag之后,必须调用用本函数才能成功获取命令行flag的值 示例 diff --git a/flag/Parsed.md b/flag/Parsed.md index 4dc5547d..1c8160bf 100644 --- a/flag/Parsed.md +++ b/flag/Parsed.md @@ -3,10 +3,10 @@ 参数列表 返回值 -- 若命令行flag已解析,返回true +- 若命令行flag参数已解析(已调用flag.Parse()方法),返回true 功能说明 -- 判断命令行flag是否已经解析,若已解析返回true +- 判断命令行flag参数是否已经解析(即调用flag.Parse()方法),若已解析返回true 示例 diff --git a/flag/PrintDefaults.md b/flag/PrintDefaults.md index ae839a92..05cc765a 100644 --- a/flag/PrintDefaults.md +++ b/flag/PrintDefaults.md @@ -5,7 +5,7 @@ 返回值 功能说明 -- 将所有已设置flag的默认值输出到标准输出,默认值包括默认值,默认错误提示等。 +- 将所有已定义flag的默认值输出到标准错误,默认值包括默认值,默认错误提示等。 示例 diff --git a/flag/README.md b/flag/README.md index dc002c65..00d0f906 100644 --- a/flag/README.md +++ b/flag/README.md @@ -35,7 +35,7 @@ flag包提供了一系列解析命令行参数的功能接口 - [func PrintDefaults()](PrintDefaults.md) - [func Set(name, value string) error](Set.md) - [func String(name string, value string, usage string) *string](String.md) -- [func StringVar(p *string, name string, value string, usage string)](StringVar) +- [func StringVar(p *string, name string, value string, usage string)](StringVar.md) - [func Uint(name string, value uint, usage string) *uint](Uint.md) - [func Uint64(name string, value uint64, usage string) *uint64](Uint64.md) - [func Uint64Var(p *uint64, name string, value uint64, usage string)](Uint64Var.md) @@ -73,9 +73,9 @@ flag包提供了一系列解析命令行参数的功能接口 - [func (f *FlagSet) Init(name string, errorHandling ErrorHandling)](FlagSetInit.md) - [func (f *FlagSet) Int(name string, value int, usage string) *int](FlagSetInt.md) - [func (f *FlagSet) Int64(name string, value int64, usage string) *int64](FlagSetInt64.md) -- [func (f *FlagSet) Int64Var(p *int64, name string, value int64, usage string)](FlagSetInt64Var) -- [func (f *FlagSet) IntVar(p *int, name string, value int, usage string)](FlagSetIntVar) -- [func (f *FlagSet) Lookup(name string) *Flag](FlagSetIntVar.md) +- [func (f *FlagSet) Int64Var(p *int64, name string, value int64, usage string)](FlagSetInt64Var.md) +- [func (f *FlagSet) IntVar(p *int, name string, value int, usage string)](FlagSetIntVar.md) +- [func (f *FlagSet) Lookup(name string) *Flag](FlagSetLookup.md) - [func (f *FlagSet) NArg() int](FlagSetNArg.md) - [func (f *FlagSet) NFlag() int](FlagSetNFlag.md) - [func (f *FlagSet) Parse(arguments []string) error](FlagSetParse.md) diff --git a/flag/Set.md b/flag/Set.md index 76ee6556..960cf380 100644 --- a/flag/Set.md +++ b/flag/Set.md @@ -1,14 +1,14 @@ ## func Set(name, value string) error 参数列表 -- name string -- value string +- name string flag 名称 +- value string flag 值 返回值 - error 设置成功返回nil 功能说明 -- 将名称为name的flag的值设置为value, name必须存在 +- 将名称为name的flag的值设置为value, 成功返回nil 示例 diff --git a/flag/Visit.md b/flag/Visit.md index 83e2613c..c5e79680 100644 --- a/flag/Visit.md +++ b/flag/Visit.md @@ -6,7 +6,7 @@ 返回值 功能说明 -- 按照字典顺序遍历所有命令行已设置的flag参数,对每个参数调用fn方法 +- 按照字典顺序遍历所有命令行已设置的flag参数(只定义了但未在命令行被设置的flag不会被遍历),对每个参数调用fn方法 代码示例 diff --git a/flag/VisitAll.md b/flag/VisitAll.md index b6202362..7f4153b1 100644 --- a/flag/VisitAll.md +++ b/flag/VisitAll.md @@ -6,7 +6,7 @@ 返回值 功能说明 -- 按照字典顺序遍历所有已设置的flag参数(不管是否在命令行中设置),对每个参数调用fn方法 +- 按照字典顺序遍历所有已定义的flag参数(不管是否在命令行中设置),对每个参数调用fn方法 代码示例