pflag
50 分钟阅读
pflag
原文:https://pkg.go.dev/github.com/spf13/pflag
版本:v1.0.5
发布日期:2019.9.18
github网址:https://github.com/spf13/pflag
描述
pflag是go语言的flag
包的一个替代品,实现了POSIX/GNU风格的--flags
。
pflag兼容GNU对命令行选项的POSIX建议的扩展。更详细的描述请参见下面的"命令行标志语法"部分。
pflag采用与Go语言相同的BSD许可证授权,许可证的内容可以在LICENSE文件中找到。
安装
使用标准的go get
命令可以获取pflag。
运行以下命令进行安装:
|
|
运行以下命令进行测试:
|
|
用法
pflag
是Go原生flag
包的一个替代品。如果您将pflag导入为"flag",则所有的代码都应该继续正常工作,无需进行任何更改。
|
|
这里有一个例外情况:如果你直接实例化 Flag 结构体,你需要设置一个额外的字段 “Shorthand”。大多数代码从不直接实例化这个结构体,而是使用 String()、BoolVar() 和 Var() 等函数,因此不受影响。
使用flag.String()、Bool()、Int()等函数来定义标志。
以下是一个声明整数标志的示例,标志名为-flagname
,存储在指针ip
中,类型为*int
:
|
|
如果需要,您可以使用Var()函数将标志绑定到一个变量上:
|
|
或者您可以创建满足Value接口的自定义标志(使用指针接收器),并通过以下方式将它们与标志解析相关联:
|
|
对于这样的标志,其默认值就是变量的初始值。
在定义所有标志后,调用
|
|
来将命令行解析进已定义的标志。
然后可以直接使用标志。如果使用的是标志本身,则它们都是指针;如果绑定到变量,则它们是值。
|
|
如果您使用 FlagSet
,并且发现在代码中跟踪所有指针变得困难,那么可以使用一些辅助函数来获取 Flag
(结构体) 中存储的值。如果您有一个名为’flagname’、类型为int
的pflag.FlagSet
,您可以使用GetInt()
来获取int值。但请注意,‘flagname’必须存在且为int类型,否则GetString("flagname")
将失败。
|
|
在解析后,该标志之后的实参可以作为flag.Args()
的切片或作为flag.Arg(i)
单独使用。实参的索引范围是从0到flag.NArg()-1
。
pflag包还定义了一些在 flag
包中不存在的新函数,这些函数为标志提供了一字母缩写。您可以通过在定义标志的任何函数名称后附加 ‘P
’ 来使用这些函数。
|
|
速记字母可以在命令行上使用单个短划线。布尔型缩写标志可以与其他缩写标志结合使用。
默认的命令行标志集由顶层函数控制。FlagSet类型允许定义独立的标志集,例如在命令行接口中实现子命令。FlagSet的方法类似于顶层函数用于命令行标志集的方法。
为标志设置无选项默认值
在创建标志后,可以为给定的标志设置pflag.NoOptDefVal。这样做会略微改变标志的含义。如果一个标志具有NoOptDefVal,并且在命令行上设置该标志而没有选项,那么该标志将被设置为NoOptDefVal。例如:
|
|
会产生类似以下的结果:
Parsed Arguments | 结果值 |
---|---|
--flagname=1357 | ip=1357 |
--flagname | ip=4321 |
[nothing] | ip=1234 |
命令行标志语法
|
|
Unlike the flag package, a single dash before an option means something different than a double dash. Single dashes signify a series of shorthand letters for flags. All but the last shorthand letter must be boolean flags or a flag with a default value
与flag
包不同,选项之前的单个短划线和双破折号有不同的含义。单个短划线表示一系列标志的速记字母。除最后一个速记字母外,其它都必须是布尔标志或具有默认值的标志
// 布尔标志或带有 'no option default value' 的标志
-f
-f=true
-abc
but
-b true is INVALID
// 非布尔和没有 'no option default value' 的标志
-n 1234
-n=1234
-n1234
// 混合使用
-abcs "hello"
-absd="hello"
-abcs1234
在终止符 “--
” 之后,标志解析会停止。与flag包不同,在这个终止符之前,标志可以与参数混合在命令行的任何位置。
整型标志接受1234、0664、0x1234等,并且可以为负数。布尔型标志(长格式)接受1、0、t、f、true、false、TRUE、FALSE、True、False。持续时间标志接受任何对于time.ParseDuration有效的输入。
修改或"规范化"标志名称
可以设置自定义的标志名称"规范化函数"。它允许标志名称在代码中创建时和在命令行上使用时以某种"规范化"的形式进行变换。比较时使用"规范化"的形式。下面是两个使用自定义规范化函数的示例。
示例#1:您希望在标志中比较 -
、_
和 .
时得到相同的结果。也就是说 --my-flag == --my_flag == --my.flag
:
|
|
示例#2:您希望给两个标志设置别名。也就是说 --old-flag-name == --new-flag-name
:
|
|
弃用标志或其缩写
可以弃用一个标志,或仅弃用它的缩写。弃用标志/缩写将在帮助文本中隐藏,并在使用被弃用的标志/缩写时显示使用消息。
示例#1:您希望弃用一个名为"badflag"的标志,并告知用户应该使用哪个标志代替它:
|
|
这将在帮助文本中隐藏"badflag",并在使用"badflag"时打印Flag --badflag has been deprecated, please use --good-flag instead
。
示例#2:您希望保留一个名为"noshorthandflag"的标志,但弃用其缩写"n":
|
|
这将在帮助文本中隐藏缩写"n",并在使用缩写"n"时打印Flag shorthand -n has been deprecated, please use --noshorthandflag only
。
请注意,这里的用法消息是必要的,不应为空。
隐藏标志
可以将一个标志标记为隐藏,这意味着它仍然会正常工作,但不会显示在用法/帮助文本中。
示例:您有一个名为"secretFlag"的标志,仅供内部使用,不希望它显示在帮助文本中或可用于用法文本:
|
|
禁用标志的排序
pflag
允许您禁用帮助和用法消息的标志排序。
示例:
|
|
输出:
-v, --verbose verbose output
--coolflag string it's really cool flag (default "yeaah")
--usefulflag int sometimes it's very useful (default 777)
在使用pflag时支持Go(标准库中的flag定义的)标志
为了支持使用Go的flag
包定义的标志,它们必须被添加到pflag
的标志集中。这通常是为了支持由第三方依赖(例如golang/glog
)定义的标志。
示例:您希望将Go标志添加到CommandLine
的标志集中:
|
|
更多信息
您可以在godoc.org上查看pflag包的完整参考文档,或者在安装后通过运行godoc -http=:6060
并浏览http://localhost:6060/pkg/github.com/spf13/pflag来使用 go 的标准文档系统。
文档概述
pflag包是Go标准库flag包的一个替代品,实现了POSIX/GNU风格的--flags
。
pflag 与 GNU 对命令行选项的 POSIX 建议的扩展兼容。请参阅 http://www.gnu.org/software/libc/manual/html_node/Argument-Syntax.html。
常量
This section is empty.
变量
|
|
CommandLine 变量是默认的命令行标志集,从 os.Args 解析而来。
|
|
ErrHelp is the error returned if the flag -help is invoked but no such flag is defined.
ErrHelp 变量是在调用标志 -help
但没有定义此类标志时返回的错误。
|
|
Usage 变量将一个用于文档化所有定义的命令行标志的用法消息打印到标准错误。该函数是一个变量,可以更改为指向自定义函数。默认情况下,它会打印一个简单的标题并调用 PrintDefaults;关于输出格式及如何控制它的详细信息,请参阅 PrintDefaults 的文档。
函数
func Arg
|
|
Arg 函数返回第 i 个命令行实参。Arg(0) 是在处理标志后剩余的第一个实参。
func Args
|
|
Args 函数返回非标志的命令行实参。
func Bool
|
|
Bool 函数定义一个具有指定名称、默认值和用法说明的 bool 标志。返回值是存储标志值的 bool 变量的地址。
func BoolP
|
|
BoolP 函数类似于 Bool函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func BoolSlice
|
|
BoolSlice 函数定义一个具有指定名称、默认值和用法说明的 []bool
标志。返回值是存储标志值的 []bool
变量的地址。
func BoolSliceP
|
|
BoolSliceP 函数类似于 BoolSlice函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func BoolSliceVar
|
|
BoolSliceVar 函数定义一个具有指定名称、默认值和用法说明的 []bool
标志。参数 p 指向一个 []bool
变量,用于存储标志值。
func BoolSliceVarP
|
|
BoolSliceVarP 函数类似于 BoolSliceVar函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func BoolVar
|
|
BoolVar 函数定义一个具有指定名称、默认值和用法说明的 bool 标志。参数 p 指向一个 bool 变量,用于存储标志值。
func BoolVarP
|
|
BoolVarP 函数类似于 BoolVar函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func BytesBase64 <- v1.0.2
|
|
BytesBase64 函数定义一个具有指定名称、默认值和用法说明的 []byte
标志。返回值是存储标志值的 []byte
变量的地址。
func BytesBase64P <- v1.0.2
|
|
BytesBase64P 函数类似于 BytesBase64函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func BytesBase64Var <- v1.0.2
|
|
BytesBase64Var 函数定义一个具有指定名称、默认值和用法说明的 []byte
标志。参数 p 指向一个 []byte
变量,用于存储标志值。
func BytesBase64VarP <- v1.0.2
|
|
BytesBase64VarP 函数类似于 BytesBase64Var函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func BytesHex <- v1.0.1
|
|
BytesHex 函数定义一个具有指定名称、默认值和用法说明的 []byte
标志。返回值是存储标志值的 []byte 变量的地址。
func BytesHexP <- v1.0.1
|
|
BytesHexP 函数类似于 BytesHex函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func BytesHexVar <- v1.0.1
|
|
BytesHexVar 函数定义一个具有指定名称、默认值和用法说明的 []byte
标志。参数 p 指向一个 []byte 变量,用于存储标志值。
func BytesHexVarP <- v1.0.1
|
|
BytesHexVarP 函数类似于 BytesHexVar函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func Count
|
|
Count 函数定义一个具有指定名称、默认值和用法说明的计数标志。返回值是存储标志值的 int 变量的地址。计数标志每次在命令行上找到时都会将其值加 1。
func CountP
|
|
CountP 函数类似于 Count函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func CountVar
|
|
CountVar 函数类似于 Count函数,但将标志放在 CommandLine 上,而不是在给定的标志集中。
func CountVarP
|
|
CountVarP 函数类似于 CountVar函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func Duration
|
|
Duration 函数定义一个具有指定名称、默认值和用法说明的 time.Duration 标志。返回值是存储标志值的 time.Duration 变量的地址。
func DurationP
|
|
DurationP 函数类似于 Duration函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func DurationSlice <- v1.0.1
|
|
DurationSlice 函数定义一个具有指定名称、默认值和用法说明的 []time.Duration 标志。返回值是存储标志值的 []time.Duration 变量的地址。
func DurationSliceP <- v1.0.1
|
|
DurationSliceP 函数类似于 DurationSlice函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func DurationSliceVar <- v1.0.1
|
|
DurationSliceVar 函数定义一个具有指定名称、默认值和用法说明的 []time.Duration
标志。参数 p 指向一个 []time.Duration
变量,用于存储标志值。
func DurationSliceVarP <- v1.0.1
|
|
DurationSliceVarP 函数类似于 DurationSliceVar,但接受一个速记字母,该字母可以在单个短划线后使用。
func DurationVar
|
|
DurationVar 函数定义一个具有指定名称、默认值和用法说明的 time.Duration 标志。参数 p 指向一个 time.Duration 变量,用于存储标志值。
func DurationVarP
|
|
DurationVarP 函数类似于 DurationVar函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func Float32
|
|
Float32 函数定义一个具有指定名称、默认值和用法说明的 float32 标志。返回值是存储标志值的 float32 变量的地址。
func Float32P
|
|
Float32P 函数类似于 Float32函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func Float32Slice <- v1.0.5
|
|
Float32Slice 函数定义一个具有指定名称、默认值和用法说明的 []float32
标志。返回值是存储标志值的 []float32
变量的地址。
func Float32SliceP <- v1.0.5
|
|
Float32SliceP 函数类似于 Float32Slice函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func Float32SliceVar <- v1.0.5
|
|
Float32SliceVar 函数定义一个具有指定名称、默认值和用法说明的 []float32
标志。参数 p 指向一个 []float32
变量,用于存储标志值。
func Float32SliceVarP <- v1.0.5
|
|
Float32SliceVarP 函数类似于 Float32SliceVar函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func Float32Var
|
|
Float32Var 函数定义一个具有指定名称、默认值和用法说明的 float32 标志。参数 p 指向一个 float32 变量,用于存储标志值。
func Float32VarP
|
|
Float32VarP 函数类似于 Float32Var函数,但接受一个速记字母,该字母可以在单个短划线后使用。
func Float64
|
|
Float64 函数定义一个具有指定名称、默认值和用法说明的 float64 标志。返回值是存储标志值的 float64 变量的地址。
func Float64P
|
|
Float64P 类似于 Float64,但接受一个速记字母,该字母可以在单个短划线后使用。
func Float64Slice <- v1.0.5
|
|
Float64Slice 定义一个具有指定名称、默认值和用法说明的 []float64
标志。返回值是存储标志值的 []float64
变量的地址。
func Float64SliceP <- v1.0.5
|
|
Float64SliceP 类似于 Float64Slice,但接受一个速记字母,该字母可以在单个短划线后使用。
func Float64SliceVar <- v1.0.5
|
|
Float64SliceVar 定义一个具有指定名称、默认值和用法说明的 []float64 标志。参数 p 指向一个 []float64 变量,用于存储标志值。
func Float64SliceVarP <- v1.0.5
|
|
Float64SliceVarP 类似于 Float64SliceVar,但接受一个速记字母,该字母可以在单个短划线后使用。
func Float64Var
|
|
Float64Var 定义一个具有指定名称、默认值和用法说明的 float64 标志。参数 p 指向一个 float64 变量,用于存储标志值。
func Float64VarP
|
|
Float64VarP 类似于 Float64Var,但接受一个速记字母,该字母可以在单个短划线后使用。
func IP
|
|
IP 定义一个具有指定名称、默认值和用法说明的 net.IP 标志。返回值是存储标志值的 net.IP 变量的地址。
func IPMask
|
|
IPMask 定义一个具有指定名称、默认值和用法说明的 net.IPMask 标志。返回值是存储标志值的 net.IPMask 变量的地址。
func IPMaskP
|
|
IPMaskP 类似于 IP,但接受一个速记字母,该字母可以在单个短划线后使用。
func IPMaskVar
|
|
IPMaskVar 定义一个具有指定名称、默认值和用法说明的 net.IPMask 标志。参数 p 指向一个 net.IPMask 变量,用于存储标志值。
func IPMaskVarP
|
|
IPMaskVarP 类似于 IPMaskVar,但接受一个速记字母,该字母可以在单个短划线后使用。
func IPNet
|
|
IPNet 定义一个具有指定名称、默认值和用法说明的 net.IPNet 标志。返回值是存储标志值的 net.IPNet 变量的地址。
func IPNetP
|
|
IPNetP 类似于 IPNet,但接受一个速记字母,该字母可以在单个短划线后使用。
func IPNetVar
|
|
IPNetVar 定义一个具有指定名称、默认值和用法说明的 net.IPNet 标志。参数 p 指向一个 net.IPNet 变量,用于存储标志值。
func IPNetVarP
|
|
IPNetVarP 类似于 IPNetVar,但接受一个速记字母,该字母可以在单个短划线后使用。
func IPP
|
|
IPP 类似于 IP,但接受一个速记字母,该字母可以在单个短划线后使用。
func IPSlice
|
|
IPSlice 定义一个具有指定名称、默认值和用法说明的 []net.IP
标志。返回值是存储标志值的 []net.IP
变量的地址。
func IPSliceP
|
|
IPSliceP 类似于 IPSlice,但接受一个速记字母,该字母可以在单个短划线后使用。
func IPSliceVar
|
|
IPSliceVar 定义一个具有指定名称、默认值和用法说明的 []net.IP
标志。参数 p 指向一个 []net.IP
变量,用于存储标志值。
func IPSliceVarP
|
|
IPSliceVarP 类似于 IPSliceVar,但接受一个速记字母,该字母可以在单个短划线后使用。
func IPVar
|
|
IPVar 定义一个具有指定名称、默认值和用法说明的 net.IP 标志。参数 p 指向一个 net.IP 变量,用于存储标志值。
func IPVarP
|
|
IPVarP 类似于 IPVar,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int
|
|
Int 定义一个具有指定名称、默认值和用法说明的 int 标志。返回值是存储标志值的 int 变量的地址。
func Int16 <- v1.0.1
|
|
Int16 定义一个具有指定名称、默认值和用法说明的 int16 标志。返回值是存储标志值的 int16 变量的地址。
func Int16P <- v1.0.1
|
|
Int16P 类似于 Int16,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int16Var <- v1.0.1
|
|
Int16Var 定义一个具有指定名称、默认值和用法说明的 int16 标志。参数 p 指向一个 int16 变量,用于存储标志值。
func Int16VarP <- v1.0.1
|
|
Int16VarP 类似于 Int16Var,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int32
|
|
Int32 定义一个具有指定名称、默认值和用法说明的 int32 标志。返回值是存储标志值的 int32 变量的地址。
func Int32P
|
|
Int32P 类似于 Int32,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int32Slice <- v1.0.5
|
|
Int32Slice 定义一个具有指定名称、默认值和用法说明的 []int32
标志。返回值是存储标志值的 []int32
变量的地址。
func Int32SliceP <- v1.0.5
|
|
Int32SliceP 类似于 Int32Slice,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int32SliceVar <- v1.0.5
|
|
Int32SliceVar 定义一个具有指定名称、默认值和用法说明的 []int32
标志。参数 p 指向一个 []int32
变量,用于存储标志值。
func Int32SliceVarP <- v1.0.5
|
|
Int32SliceVarP 类似于 Int32SliceVar,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int32Var
|
|
Int32Var 定义一个具有指定名称、默认值和用法说明的 int32 标志。参数 p 指向一个 int32 变量,用于存储标志值。
func Int32VarP
|
|
Int32VarP 类似于 Int32Var,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int64
|
|
Int64 定义一个具有指定名称、默认值和用法说明的 int64 标志。返回值是存储标志值的 int64 变量的地址。
func Int64P
|
|
Int64P 类似于 Int64,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int64Slice <- v1.0.5
|
|
Int64Slice 定义一个具有指定名称、默认值和用法说明的 []int64
标志。返回值是存储标志值的 []int64
变量的地址。
func Int64SliceP <- v1.0.5
|
|
Int64SliceP 类似于 Int64Slice,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int64SliceVar <- v1.0.5
|
|
Int64SliceVar defines a int64[] flag with specified name, default value, and usage string. The argument p points to a int64[] variable in which to store the value of the flag.
Int64SliceVar 定义一个具有指定名称、默认值和用法说明的 []int64
标志。参数 p 指向一个 []int64
变量,用于存储标志值。
func Int64SliceVarP <- v1.0.5
|
|
Int64SliceVarP 类似于 Int64SliceVar,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int64Var
|
|
Int64Var defines an int64 flag with specified name, default value, and usage string. The argument p points to an int64 variable in which to store the value of the flag.
Int64VarP 类似于 Int64Var,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int64VarP
|
|
Int64VarP is like Int64Var, but accepts a shorthand letter that can be used after a single dash.
Int8 定义一个具有指定名称、默认值和用法说明的 int8 标志。返回值是存储标志值的 int8 变量的地址。
func Int8
|
|
Int8 defines an int8 flag with specified name, default value, and usage string. The return value is the address of an int8 variable that stores the value of the flag.
Int8P 类似于 Int8,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int8P
|
|
Int8P is like Int8, but accepts a shorthand letter that can be used after a single dash.
Int8Var 定义一个具有指定名称、默认值和用法说明的 int8 标志。参数 p 指向一个 int8 变量,用于存储标志值。
func Int8Var
|
|
Int8Var defines an int8 flag with specified name, default value, and usage string. The argument p points to an int8 variable in which to store the value of the flag.
Int8VarP 类似于 Int8Var,但接受一个速记字母,该字母可以在单个短划线后使用。
func Int8VarP
|
|
Int8VarP is like Int8Var, but accepts a shorthand letter that can be used after a single dash.
Int8VarP 类似于 Int8Var,但接受一个速记字母,该字母可以在单个短划线后使用。
func IntP
|
|
IntP is like Int, but accepts a shorthand letter that can be used after a single dash.
IntP 类似于 Int,但接受一个速记字母,该字母可以在单个短划线后使用。
func IntSlice
|
|
IntSlice defines a []int flag with specified name, default value, and usage string. The return value is the address of a []int variable that stores the value of the flag.
IntSlice 定义一个具有指定名称、默认值和用法说明的 []int
标志。返回值是存储标志值的 []int
变量的地址。
func IntSliceP
|
|
IntSliceP 类似于 IntSlice,但接受一个速记字母,该字母可以在单个短划线后使用。
func IntSliceVar
|
|
IntSliceVar 定义一个具有指定名称、默认值和用法说明的 []int
标志。参数 p 指向一个 []int
变量,用于存储标志值。
func IntSliceVarP
|
|
IntSliceVarP 类似于 IntSliceVar,但接受一个速记字母,该字母可以在单个短划线后使用。
func IntVar
|
|
IntVar 定义一个具有指定名称、默认值和用法说明的 int 标志。参数 p 指向一个 int 变量,用于存储标志值。
func IntVarP
|
|
IntVarP 类似于 IntVar,但接受一个速记字母,该字母可以在单个短划线后使用。
func NArg
|
|
NArg 返回在处理标志之后剩余的参数数目。unc NFlag
|
|
NFlag 返回已设置的命令行标志数目。
func Parse
|
|
Parse 解析来自 os.Args[1:] 的命令行标志。必须在定义所有标志之后,程序访问标志之前调用。
func ParseAll
|
|
ParseAll 解析来自 os.Args[1:] 的命令行标志,并为每个标志调用 fn。fn 的参数为 flag 和 value。必须在定义所有标志之后,程序访问标志之前调用。
func ParseIPv4Mask
|
|
ParseIPv4Mask 将以 IP 形式(例如 255.255.255.0)编写的字符串解析为 net.IPMask。这个函数应该实际上属于 net 包。
func Parsed
|
|
Parsed 如果已解析命令行标志,则返回 true。
func PrintDefaults
|
|
PrintDefaults 打印到标准错误流中所有已定义命令行标志的默认值。
func Set
|
|
Set 函数用于设置指定名称的命令行标志的值。
func SetInterspersed
|
|
SetInterspersed 函数用于设置是否支持交错的选项和非选项实参。
func String
|
|
String 函数定义一个具有指定名称、默认值和用法说明的字符串标志。返回值是存储标志值的字符串变量的地址。
func StringArray
|
|
StringArray 函数定义一个具有指定名称、默认值和用法说明的字符串数组标志。返回值是存储标志值的 []string 变量的地址。每个参数的值不会尝试用逗号分隔。对于这种情况,请使用 StringSlice函数。
func StringArrayP
|
|
StringArrayP 函数与 StringArray 函数类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringArrayVar
|
|
StringArrayVar 函数定义一个具有指定名称、默认值和用法说明的字符串数组标志。参数 p 指向一个 []string 变量,用于存储标志值。每个参数的值不会尝试用逗号分隔。对于这种情况,请使用 StringSlice。
func StringArrayVarP
|
|
StringArrayVarP 与 StringArrayVar 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringP
|
|
StringP 函数与 String 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringSlice
|
|
StringSlice 函数定义一个具有指定名称、默认值和用法说明的字符串切片标志。返回值是存储标志值的 []string 变量的地址。与 StringArray 标志不同,StringSlice 标志将以逗号分隔的值作为参数,并相应地进行拆分。例如:
--ss="v1,v2" --ss="v3"
将导致
[]string{"v1", "v2", "v3"}
func StringSliceP
|
|
StringSliceP 与 StringSlice 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringSliceVar
|
|
StringSliceVar 函数定义一个具有指定名称、默认值和用法说明的字符串切片标志。参数 p 指向一个 []string 变量,用于存储标志值。与 StringArray 标志不同,StringSlice 标志将以逗号分隔的值作为参数,并相应地进行拆分。例如:
--ss="v1,v2" --ss="v3"
将导致
[]string{"v1", "v2", "v3"}
func StringSliceVarP
|
|
StringSliceVarP 函数与 StringSliceVar 函数类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringToInt <- v1.0.3
|
|
StringToInt 函数定义一个具有指定名称、默认值和用法说明的 map[string]int 标志。返回值是存储标志值的 map[string]int 变量的地址。每个参数的值不会尝试用逗号分隔。
func StringToInt64 <- v1.0.5
|
|
StringToInt64 函数定义一个具有指定名称、默认值和用法说明的 map[string]int64 标志。返回值是存储标志值的 map[string]int64 变量的地址。每个参数的值不会尝试用逗号分隔。
func StringToInt64P <- v1.0.5
|
|
StringToInt64P 与 StringToInt64 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringToInt64Var <- v1.0.5
|
|
StringToInt64Var 函数定义一个具有指定名称、默认值和用法说明的 map[string]int64 标志。参数 p 指向一个 map[string]int64 变量,用于存储标志值。每个参数的值不会尝试用逗号分隔。
func StringToInt64VarP <- v1.0.5
|
|
StringToInt64VarP 与 StringToInt64Var 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringToIntP <- v1.0.3
|
|
StringToIntP 与 StringToInt 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringToIntVar <- v1.0.3
|
|
StringToIntVar 函数定义一个具有指定名称、默认值和用法说明的 map[string]int 标志。参数 p 指向一个 map[string]int 变量,用于存储标志值。每个参数的值不会尝试用逗号分隔。
func StringToIntVarP <- v1.0.3
|
|
StringToIntVarP 与 StringToIntVar 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringToString <- v1.0.3
|
|
StringToString 函数定义一个具有指定名称、默认值和用法说明的 map[string]string 标志。返回值是存储标志值的 map[string]string 变量的地址。每个参数的值不会尝试用逗号分隔。
func StringToStringP <- v1.0.3
|
|
StringToStringP 与 StringToString 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringToStringVar <- v1.0.3
|
|
StringToStringVar 函数定义一个具有指定名称、默认值和用法说明的 map[string]string 标志。参数 p 指向一个 map[string]string 变量,用于存储标志值。每个参数的值不会尝试用逗号分隔。
func StringToStringVarP <- v1.0.3
|
|
StringToStringVarP 与 StringToStringVar 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func StringVar
|
|
StringVar 函数定义一个具有指定名称、默认值和用法说明的字符串标志。参数 p 指向一个字符串变量,用于存储标志值。
func StringVarP
|
|
StringVarP 函数与 StringVar 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func Uint
|
|
Uint 函数定义一个具有指定名称、默认值和用法说明的无符号整数标志。返回值是存储标志值的无符号整数变量的地址。
func Uint16
|
|
Uint16 函数定义一个具有指定名称、默认值和用法说明的 uint16 标志。返回值是存储标志值的 uint16 变量的地址。
func Uint16P
|
|
Uint16P 函数与 Uint16 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func Uint16Var
|
|
Uint16Var 函数定义一个具有指定名称、默认值和用法说明的 uint16 标志。参数 p 指向一个 uint16 变量,用于存储标志值。
func Uint16VarP
|
|
Uint16VarP 函数与 Uint16Var 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func Uint32
|
|
Uint32 函数定义一个具有指定名称、默认值和用法说明的 uint32 标志。返回值是存储标志值的 uint32 变量的地址。
func Uint32P
|
|
Uint32P 函数与 Uint32 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func Uint32Var
|
|
Uint32Var 函数定义一个具有指定名称、默认值和用法说明的 uint32 标志。参数 p 指向一个 uint32 变量,用于存储标志值。
func Uint32VarP
|
|
Uint32VarP 函数与 Uint32Var 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func Uint64
|
|
Uint64 函数定义一个具有指定名称、默认值和用法说明的 uint64 标志。返回值是存储标志值的 uint64 变量的地址。
func Uint64P
|
|
Uint64P 函数与 Uint64 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func Uint64Var
|
|
Uint64Var 函数定义一个具有指定名称、默认值和用法说明的 uint64 标志。参数 p 指向一个 uint64 变量,用于存储标志值。
func Uint64VarP
|
|
Uint64VarP 函数与 Uint64Var 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func Uint8
|
|
Uint8 函数定义一个具有指定名称、默认值和用法说明的 uint8 标志。返回值是存储标志值的 uint8 变量的地址。
func Uint8P
|
|
Uint8P 函数与 Uint8 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func Uint8Var
|
|
Uint8Var 函数定义一个具有指定名称、默认值和用法说明的 uint8 标志。参数 p 指向一个 uint8 变量,用于存储标志值。
func Uint8VarP
|
|
Uint8VarP 函数与 Uint8Var 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func UintP
|
|
UintP 函数与 Uint 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func UintSlice
|
|
UintSlice 函数定义一个具有指定名称、默认值和用法说明的 []uint
标志。返回值是存储标志值的 []uint
变量的地址。
func UintSliceP
|
|
UintSliceP 函数与 UintSlice 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func UintSliceVar
|
|
UintSliceVar 函数定义一个具有指定名称、默认值和用法说明的 []uint
标志。参数 p 指向一个 []uint
变量,用于存储标志值。
func UintSliceVarP
|
|
UintSliceVarP 函数与 UintSliceVar 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func UintVar
|
|
UintVar 函数定义一个具有指定名称、默认值和用法说明的无符号整数标志。参数 p 指向一个无符号整数变量,用于存储标志值。
func UintVarP
|
|
UintVarP 函数与 UintVar 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func UnquoteUsage
|
|
UnquoteUsage 函数从标志的用法说明字符串中提取用反引号括起的名称,并返回名称和未引用的用法说明。对于给定的 “a name
to show”,它返回 (“name”, “a name to show”)。如果没有反引号,则名称是标志值类型的有教育意义的猜测,如果标志是布尔值,则为空字符串。
func Var
|
|
Var 函数通过第一个参数的 Value 类型来定义具有指定名称和用法说明的标志。Value 类型通常包含用户定义的 Value 实现,通过该实现可以将逗号分隔的字符串转换为切片。例如,调用者可以创建一个标志,通过给切片赋予 Value 方法,将逗号分隔的字符串转换为切片。
func VarP
|
|
VarP is like Var, but accepts a shorthand letter that can be used after a single dash.
VarP 函数与 Var 类似,但接受一个速记字母,该字母可以在单个短划线后使用。
func Visit
|
|
Visit 函数按照词法顺序或原始顺序(如果 f.SortFlags 为 false)访问命令行标志,对每个标志调用提供的函数 fn。它仅访问已设置的标志。
func VisitAll
|
|
VisitAll 函数按照词法顺序或原始顺序(如果 f.SortFlags 为 false)访问命令行标志,对每个标志调用提供的函数 fn。它访问所有标志,包括未设置的标志。
类型
type ErrorHandling
|
|
ErrorHandling 定义了如何处理标志解析错误。
|
|
type Flag
|
|
Flag 表示标志的状态。
func Lookup
|
|
Lookup 返回指定命令行标志的 Flag 结构,如果不存在则返回 nil。
func PFlagFromGoFlag
|
|
PFlagFromGoFlag 将给定的 *flag.Flag 转换为 *pflag.Flag。如果 *flag.Flag.Name 是一个单个字符(例如 v
),则可以在标志中使用 -v
和 --v
。如果 golang 标志不止一个字符(例如 verbose
),则只能通过 --verbose
使用。
func ShorthandLookup
|
|
ShorthandLookup 返回指定缩写标志的 Flag 结构,如果不存在则返回 nil。
ShorthandLookup Example
|
|
type FlagSet
|
|
FlagSet 表示一组定义的标志。
func NewFlagSet
|
|
NewFlagSet 函数返回一个新的、空的带有指定名称和错误处理属性的 FlagSet,SortFlags 设置为 true。
(*FlagSet) AddFlag
|
|
AddFlag 方法将标志添加到 FlagSet。
(*FlagSet) AddFlagSet
|
|
AddFlagSet 将一个 FlagSet 添加到另一个 FlagSet。如果标志已经存在于 f 中,则忽略来自 newSet 的标志。
(*FlagSet) AddGoFlag
|
|
AddGoFlag 将给定的 *flag.Flag 添加到 pflag.FlagSet。
(*FlagSet) AddGoFlagSet
|
|
AddGoFlagSet 将给定的 *flag.FlagSet 添加到 pflag.FlagSet。
(*FlagSet) Arg
|
|
Arg 返回第 i 个参数。Arg(0) 是在处理标志后剩下的第一个参数。
(*FlagSet) Args
|
|
Args 返回非标志参数。
(*FlagSet) ArgsLenAtDash
|
|
ArgsLenAtDash 返回在参数解析过程中找到 --
时 f.Args 的长度。这允许程序知道哪些参数在 --
之前,哪些参数在 --
之后。
(*FlagSet) Bool
|
|
Bool 定义具有指定名称、默认值和用法说明的布尔标志。返回值是存储标志值的 bool 变量的地址。
(*FlagSet) BoolP
|
|
BoolP 类似于 Bool,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) BoolSlice
|
|
BoolSlice 定义具有指定名称、默认值和用法说明的 []bool 标志。返回值是存储标志值的 []bool 变量的地址。
(*FlagSet) BoolSliceP
|
|
BoolSliceP 类似于 BoolSlice,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) BoolSliceVar
|
|
BoolSliceVar 定义具有指定名称、默认值和用法说明的 boolSlice 标志。参数 p 指向一个 []bool 变量,用于存储标志值。
(*FlagSet) BoolSliceVarP
|
|
BoolSliceVarP 类似于 BoolSliceVar,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) BoolVar
|
|
BoolVar 定义具有指定名称、默认值和用法说明的 bool 标志。参数 p 指向一个 bool 变量,用于存储标志值。
(*FlagSet) BoolVarP
|
|
BoolVarP 类似于 BoolVar,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) BytesBase64 <- v1.0.2
|
|
BytesBase64 定义具有指定名称、默认值和用法说明的 []byte 标志。返回值是存储标志值的 []byte 变量的地址。
(*FlagSet) BytesBase64P <- v1.0.2
|
|
BytesBase64P 类似于 BytesBase64,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) BytesBase64Var <- v1.0.2
|
|
BytesBase64Var 定义具有指定名称、默认值和用法说明的 []byte 标志。参数 p 指向一个 []byte 变量,用于存储标志值。
(*FlagSet) BytesBase64VarP <- v1.0.2
|
|
BytesBase64VarP 类似于 BytesBase64Var,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) BytesHex <- v1.0.1
|
|
BytesHex 定义具有指定名称、默认值和用法说明的 []byte 标志。返回值是存储标志值的 []byte 变量的地址。
(*FlagSet) BytesHexP <- v1.0.1
|
|
BytesHexP 类似于 BytesHex,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) BytesHexVar <- v1.0.1
|
|
BytesHexVar 定义具有指定名称、默认值和用法说明的 []byte 标志。参数 p 指向一个 []byte 变量,用于存储标志值。
(*FlagSet) BytesHexVarP <- v1.0.1
|
|
BytesHexVarP 类似于 BytesHexVar,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) Changed
|
|
Changed 返回 true,如果标志在 Parse() 期间被显式设置,否则返回 false。
(*FlagSet) Count
|
|
Count 定义具有指定名称、默认值和用法说明的计数标志。返回值是存储标志值的 int 变量的地址。计数标志会在每次在命令行上找到它时将其值加 1。
(*FlagSet) CountP
|
|
CountP 类似于 Count,只接受缩写标志名称。
(*FlagSet) CountVar
|
|
CountVar 定义具有指定名称、默认值和用法说明的计数标志。参数 p 指向一个 int 变量,用于存储标志值。计数标志会在每次在命令行上找到它时将其值加 1。
(*FlagSet) CountVarP
|
|
CountVarP 类似于 CountVar,只接受缩写标志名称。
(*FlagSet) Duration
|
|
Duration 定义具有指定名称、默认值和用法说明的 time.Duration 标志。返回值是存储标志值的 time.Duration 变量的地址。
(*FlagSet) DurationP
|
|
DurationP 类似于 Duration,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) DurationSlice <- v1.0.1
|
|
DurationSlice 定义具有指定名称、默认值和用法说明的 []time.Duration 标志。返回值是存储标志值的 []time.Duration 变量的地址。
(*FlagSet) DurationSliceP <- v1.0.1
|
|
DurationSliceP 类似于 DurationSlice,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) DurationSliceVar <- v1.0.1
|
|
DurationSliceVar 定义具有指定名称、默认值和用法说明的 durationSlice 标志。参数 p 指向一个 []time.Duration 变量,用于存储标志值。
(*FlagSet) DurationSliceVarP <- v1.0.1
|
|
DurationSliceVarP 类似于 DurationSliceVar,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) DurationVar
|
|
DurationVar 定义具有指定名称、默认值和用法说明的 time.Duration 标志。参数 p 指向一个 time.Duration 变量,用于存储标志值。
(*FlagSet) DurationVarP
|
|
DurationVarP 类似于 DurationVar,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) FlagUsages
|
|
FlagUsages 返回一个包含 FlagSet 中所有标志的用法信息的字符串。
(*FlagSet) FlagUsagesWrapped
|
|
FlagUsagesWrapped 返回一个包含 FlagSet 中所有标志的用法信息的字符串。用 cols 列进行换行(0 表示不换行)。
(*FlagSet) Float32
|
|
Float32 定义具有指定名称、默认值和用法说明的 float32 标志。返回值是存储标志值的 float32 变量的地址。
(*FlagSet) Float32P
|
|
Float32P 类似于 Float32,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) Float32Slice <- v1.0.5
|
|
Float32Slice 定义具有指定名称、默认值和用法说明的 []float32 标志。返回值是存储标志值的 []float32 变量的地址。
(*FlagSet) Float32SliceP <- v1.0.5
|
|
Float32SliceP 类似于 Float32Slice,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) Float32SliceVar <- v1.0.5
|
|
Float32SliceVar 定义具有指定名称、默认值和用法说明的 float32Slice 标志。参数 p 指向一个 []float32 变量,用于存储标志值。
(*FlagSet) Float32SliceVarP <- v1.0.5
|
|
Float32SliceVarP 类似于 Float32SliceVar,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) Float32Var
|
|
Float32Var 定义具有指定名称、默认值和用法说明的 float32 标志。参数 p 指向一个 float32 变量,用于存储标志值。
(*FlagSet) Float32VarP
|
|
Float32VarP 类似于 Float32Var,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) Float64
|
|
Float64 定义具有指定名称、默认值和用法说明的 float64 标志。返回值是存储标志值的 float64 变量的地址。
(*FlagSet) Float64P
|
|
Float64P 类似于 Float64,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) Float64Slice <- v1.0.5
|
|
Float64Slice 定义具有指定名称、默认值和用法说明的 []float64 标志。返回值是存储标志值的 []float64 变量的地址。
(*FlagSet) Float64SliceP <- v1.0.5
|
|
Float64SliceP 类似于 Float64Slice,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) Float64SliceVar <- v1.0.5
|
|
Float64SliceVar 定义具有指定名称、默认值和用法说明的 float64Slice 标志。参数 p 指向一个 []float64 变量,用于存储标志值。
(*FlagSet) Float64SliceVarP <- v1.0.5
|
|
Float64SliceVarP 类似于 Float64SliceVar,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) Float64Var
|
|
Float64Var 定义具有指定名称、默认值和用法说明的 float64 标志。参数 p 指向一个 float64 变量,用于存储标志值。
(*FlagSet) Float64VarP
|
|
Float64VarP 类似于 Float64Var,但接受一个速记字母,该字母可以在单个短划线后使用。
(*FlagSet) GetBool
|
|
GetBool 返回具有指定名称的 bool 标志的值。
(*FlagSet) GetBoolSlice
|
|
GetBoolSlice 返回具有指定名称的 []bool 标志的值。
(*FlagSet) GetBytesBase64 <- v1.0.2
|
|
GetBytesBase64 返回具有给定名称的标志的 []byte 值。
(*FlagSet) GetBytesHex <- v1.0.1
|
|
GetBytesHex 返回具有给定名称的标志的 []byte 值。
(*FlagSet) GetCount
|
|
GetCount 返回具有给定名称的标志的 int 值。
(*FlagSet) GetDuration
|
|
GetDuration 返回具有给定名称的标志的 time.Duration 值。
(*FlagSet) GetDurationSlice <- v1.0.1
|
|
GetDurationSlice 返回具有给定名称的标志的 []time.Duration 值。
(*FlagSet) GetFloat32
|
|
GetFloat32 返回具有给定名称的标志的 float32 值。
(*FlagSet) GetFloat32Slice <- v1.0.5
|
|
GetFloat32Slice 返回具有给定名称的标志的 []float32 值。
(*FlagSet) GetFloat64
|
|
GetFloat64 返回具有给定名称的标志的 float64 值。
(*FlagSet) GetFloat64Slice <- v1.0.5
|
|
GetFloat64Slice 返回具有给定名称的标志的 []float64 值。
(*FlagSet) GetIP
|
|
GetIP 返回具有给定名称的标志的 net.IP 值。
(*FlagSet) GetIPNet
|
|
GetIPNet 返回具有给定名称的标志的 net.IPNet 值。
(*FlagSet) GetIPSlice
|
|
GetIPSlice 返回具有给定名称的标志的 []net.IP 值。
(*FlagSet) GetIPv4Mask
|
|
GetIPv4Mask 返回具有给定名称的标志的 net.IPv4Mask 值。
(*FlagSet) GetInt
|
|
GetInt 返回具有给定名称的标志的 int 值。
(*FlagSet) GetInt16 <- v1.0.1
|
|
GetInt16 返回具有给定名称的标志的 int16 值。
(*FlagSet) GetInt32
|
|
GetInt32 返回具有给定名称的标志的 int32 值。
(*FlagSet) GetInt32Slice <- v1.0.5
|
|
GetInt32Slice 返回具有给定名称的标志的 []int32 值。
(*FlagSet) GetInt64
|
|
GetInt64 返回具有给定名称的标志的 int64 值。
(*FlagSet) GetInt64Slice <- v1.0.5
|
|
GetInt64Slice 返回具有给定名称的标志的 []int64 值。
(*FlagSet) GetInt8
|
|
GetInt8 返回具有给定名称的标志的 int8 值。
(*FlagSet) GetIntSlice
|
|
GetIntSlice 返回具有给定名称的标志的 []int 值。
(*FlagSet) GetNormalizeFunc
|
|
GetNormalizeFunc 返回先前设置的 NormalizeFunc 函数,该函数不进行翻译,如果以前未设置。
(*FlagSet) GetString
|
|
GetString 返回具有给定名称的标志的 string 值。
(*FlagSet) GetStringArray
|
|
GetStringArray 返回具有给定名称的标志的 []string 值。
(*FlagSet) GetStringSlice
|
|
GetStringSlice 返回具有给定名称的标志的 []string 值。
(*FlagSet) GetStringToInt <- v1.0.3
|
|
GetStringToInt 返回具有给定名称的标志的 map[string]int 值。
(*FlagSet) GetStringToInt64 <- v1.0.5
|
|
GetStringToInt64 返回具有给定名称的标志的 map[string]int64 值。
(*FlagSet) GetStringToString <- v1.0.3
|
|
GetStringToString 返回具有给定名称的标志的 map[string]string 值。
(*FlagSet) GetUint
|
|
GetUint 返回给定名称的标志的 uint 值。
(*FlagSet) GetUint16
|
|
GetUint16 返回给定名称的标志的 uint16 值。
(*FlagSet) GetUint32
|
|
GetUint32 返回给定名称的标志的 uint32 值。
(*FlagSet) GetUint64
|
|
GetUint64 返回给定名称的标志的 uint64 值。
(*FlagSet) GetUint8
|
|
GetUint8 返回给定名称的标志的 uint8 值。
(*FlagSet) GetUintSlice
|
|
GetUintSlice 返回给定名称的标志的 []uint 值。
(*FlagSet) HasAvailableFlags
|
|
HasAvailableFlags 返回一个布尔值,指示 FlagSet 是否有任何未隐藏的标志。
(*FlagSet) HasFlags
|
|
HasFlags 返回一个布尔值,指示 FlagSet 是否有任何已定义的标志。
(*FlagSet) IP
|
|
IP 使用指定的名称、默认值和用法字符串来定义 net.IP 标志。返回值是一个 net.IP 变量的地址,用于存储标志的值。
(*FlagSet) IPMask
|
|
IPMask 使用指定的名称、默认值和用法字符串来定义 net.IPMask 标志。返回值是一个 net.IPMask 变量的地址,用于存储标志的值。
(*FlagSet) IPMaskP
|
|
IPMaskP 类似于 IPMask,但接受一个快捷字母,可以在单个短划线后使用。
(*FlagSet) IPMaskVar
|
|
IPMaskVar 使用指定的名称、默认值和用法字符串来定义 net.IPMask 标志。参数 p 指向一个 net.IPMask 变量,用于存储标志的值。
(*FlagSet) IPMaskVarP
|
|
IPMaskVarP 类似于 IPMaskVar,但接受一个快捷字母,可以在单个短划线后使用。
(*FlagSet) IPNet
|
|
IPNet 使用指定的名称、默认值和用法字符串来定义 net.IPNet 标志。返回值是一个 net.IPNet 变量的地址,用于存储标志的值。
(*FlagSet) IPNetP
|
|
IPNetP 类似于 IPNet,但接受一个快捷字母,可以在单个短划线后使用。
(*FlagSet) IPNetVar
|
|
IPNetVar 使用指定的名称、默认值和用法字符串来定义 net.IPNet 标志。参数 p 指向一个 net.IPNet 变量,用于存储标志的值。
(*FlagSet) IPNetVarP
|
|
IPNetVarP 类似于 IPNetVar,但接受一个快捷字母,可以在单个短划线后使用。
(*FlagSet) IPP
|
|
IPP 类似于 IP,但接受一个快捷字母,可以在单个短划线后使用。
(*FlagSet) IPSlice
|
|
IPSlice 使用指定的名称、默认值和用法字符串来定义 []net.IP 标志。返回值是一个 []net.IP 变量的地址,用于存储标志的值。
(*FlagSet) IPSliceP
|
|
IPSliceP 类似于 IPSlice,但接受一个快捷字母,可以在单个短划线后使用。
(*FlagSet) IPSliceVar
|
|
IPSliceVar 定义了一个名为 ipSlice 的标志,指定了默认值和用法说明。参数 p 指向一个 []net.IP 变量,用于存储标志的值。
(*FlagSet) IPSliceVarP
|
|
IPSliceVarP 类似于 IPSliceVar,但允许在单个短划线后使用速记字母。
(*FlagSet) IPVar
|
|
IPVar 定义了一个带有指定名称、默认值和用法说明的 net.IP 标志。参数 p 指向一个 net.IP 变量,用于存储标志的值。
(*FlagSet) IPVarP
|
|
IPVarP 类似于 IPVar,但允许在单个短划线后使用速记字母。
(*FlagSet) Init
|
|
Init 为标志集设置名称和错误处理属性。默认情况下,零值的 FlagSet 使用空名称和 ContinueOnError 错误处理策略。
(*FlagSet) Int
|
|
Int 定义了一个带有指定名称、默认值和用法说明的 int 标志。返回值是一个 int 变量的地址,用于存储标志的值。
(*FlagSet) Int16 <- v1.0.1
|
|
Int16 定义了一个带有指定名称、默认值和用法说明的 int16 标志。返回值是一个 int16 变量的地址,用于存储标志的值。
(*FlagSet) Int16P <- v1.0.1
|
|
Int16P 类似于 Int16,但允许在单个短划线后使用速记字母。
(*FlagSet) Int16Var <- v1.0.1
|
|
Int16Var 定义了一个带有指定名称、默认值和用法说明的 int16 标志。参数 p 指向一个 int16 变量,用于存储标志的值。
(*FlagSet) Int16VarP <- v1.0.1
|
|
Int16VarP 类似于 Int16Var,但允许在单个短划线后使用速记字母。
(*FlagSet) Int32
|
|
Int32 定义了一个带有指定名称、默认值和用法说明的 int32 标志。返回值是一个 int32 变量的地址,用于存储标志的值。
(*FlagSet) Int32P
|
|
Int32P 类似于 Int32,但允许在单个短划线后使用速记字母。
(*FlagSet) Int32Slice <- v1.0.5
|
|
Int32Slice 定义了一个带有指定名称、默认值和用法说明的 []int32 标志。返回值是一个 []int32 变量的地址,用于存储标志的值。
(*FlagSet) Int32SliceP <- v1.0.5
|
|
Int32SliceP 类似于 Int32Slice,但允许在单个短划线后使用速记字母。
(*FlagSet) Int32SliceVar <- v1.0.5
|
|
Int32SliceVar 定义了一个带有指定名称、默认值和用法说明的 int32Slice 标志。参数 p 指向一个 []int32 变量,用于存储标志的值。
(*FlagSet) Int32SliceVarP <- v1.0.5
|
|
Int32SliceVarP 类似于 Int32SliceVar,但允许在单个短划线后使用速记字母。
(*FlagSet) Int32Var
|
|
Int32Var 定义了一个带有指定名称、默认值和用法说明的 int32 标志。参数 p 指向一个 int32 变量,用于存储标志的值。
(*FlagSet) Int32VarP
|
|
Int32VarP 类似于 Int32Var,但允许在单个短划线后使用速记字母。
(*FlagSet) Int64
|
|
Int64 定义了一个带有指定名称、默认值和用法说明的 int64 标志。返回值是一个 int64 变量的地址,用于存储标志的值。
(*FlagSet) Int64P
|
|
Int64P 类似于 Int64,但允许在单个短划线后使用速记字母。
(*FlagSet) Int64Slice <- v1.0.5
|
|
Int64Slice 定义了一个带有指定名称、默认值和用法说明的 []int64 标志。返回值是一个 []int64 变量的地址,用于存储标志的值。
(*FlagSet) Int64SliceP <- v1.0.5
|
|
Int64SliceP 类似于 Int64Slice,但允许在单个短划线后使用速记字母。
(*FlagSet) Int64SliceVar <- v1.0.5
|
|
Int64SliceVar 定义了一个带有指定名称、默认值和用法说明的 int64Slice 标志。参数 p 指向一个 []int64 变量,用于存储标志的值。
(*FlagSet) Int64SliceVarP <- v1.0.5
|
|
Int64SliceVarP 类似于 Int64SliceVar,但允许在单个短划线后使用速记字母。
(*FlagSet) Int64Var
|
|
Int64Var 定义了一个带有指定名称、默认值和用法说明的 int64 标志。参数 p 指向一个 int64 变量,用于存储标志的值。
(*FlagSet) Int64VarP
|
|
Int64VarP 类似于 Int64Var,但允许在单个短划线后使用速记字母。
(*FlagSet) Int8
|
|
Int8 定义了一个带有指定名称、默认值和用法说明的 int8 标志。返回值是一个 int8 变量的地址,用于存储标志的值。
(*FlagSet) Int8P
|
|
Int8P 类似于 Int8,但允许在单个短划线后使用速记字母。
(*FlagSet) Int8Var
|
|
Int8Var 定义了一个带有指定名称、默认值和用法说明的 int8 标志。参数 p 指向一个 int8 变量,用于存储标志的值。
(*FlagSet) Int8VarP
|
|
Int8VarP 类似于 Int8Var,但允许在单个短划线后使用速记字母。
(*FlagSet) IntP
|
|
IntP 类似于 Int,但允许在单个短划线后使用速记字母。
(*FlagSet) IntSlice
|
|
IntSlice 定义了一个带有指定名称、默认值和用法说明的 []int 标志。返回值是一个 []int 变量的地址,用于存储标志的值。
(*FlagSet) IntSliceP
|
|
IntSliceP 类似于 IntSlice,但允许在单个短划线后使用速记字母。
(*FlagSet) IntSliceVar
|
|
IntSliceVar 定义了一个带有指定名称、默认值和用法说明的 intSlice 标志。参数 p 指向一个 []int 变量,用于存储标志的值。
(*FlagSet) IntSliceVarP
|
|
IntSliceVarP 类似于 IntSliceVar,但允许在单个短划线后使用速记字母。
(*FlagSet) IntVar
|
|
IntVar 定义了一个带有指定名称、默认值和用法说明的 int 标志。参数 p 指向一个 int 变量,用于存储标志的值。
(*FlagSet) IntVarP
|
|
IntVarP 类似于 IntVar,但允许在单个短划线后使用速记字母。
(*FlagSet) Lookup
|
|
Lookup 根据名称返回标志的 Flag 结构,如果不存在则返回 nil。
(*FlagSet) MarkDeprecated
|
|
MarkDeprecated 表示程序中的一个标志已被弃用。它将继续工作,但不会显示在帮助或用法消息中。使用此标志还将打印给定的 usageMessage。
(*FlagSet) MarkHidden
|
|
MarkHidden 将标志标记为“隐藏”状态。它将继续工作,但不会显示在帮助或用法消息中。
(*FlagSet) MarkShorthandDeprecated
|
|
MarkShorthandDeprecated 将标志的缩写标记为在程序中已弃用。它将继续工作,但不会显示在帮助或用法消息中。使用此标志还将打印给定的 usageMessage。
(*FlagSet) NArg
|
|
NArg 返回处理完标志后剩余的参数数量。
(*FlagSet) NFlag
|
|
NFlag 返回已设置的标志数量。
(*FlagSet) Parse
|
|
Parse 从参数列表解析标志定义,参数列表不应包括命令名称。必须在 FlagSet 中的所有标志定义之后、程序访问标志之前调用。如果设置了 -help 但未定义,返回值将是 ErrHelp。
(*FlagSet) ParseAll
|
|
ParseAll 从参数列表解析标志定义,参数列表不应包括命令名称。fn 的参数是 flag 和 value。必须在 FlagSet 中的所有标志定义之后、程序访问标志之前调用。如果设置了 -help 但未定义,返回值将是 ErrHelp。
(*FlagSet) Parsed
|
|
Parsed 报告是否已调用 f.Parse。
(*FlagSet) PrintDefaults
|
|
PrintDefaults 打印所有已定义标志的默认值到标准错误(除非另有配置)。
(*FlagSet) Set
|
|
Set 设置指定标志的值。
(*FlagSet) SetAnnotation
|
|
SetAnnotation 允许在 FlagSet 上设置任意注释。这有时由 spf13/cobra 程序使用,它们希望生成额外的 bash 完成信息。
(*FlagSet) SetInterspersed
|
|
SetInterspersed 设置是否支持交错的选项/非选项参数。
(*FlagSet) SetNormalizeFunc
|
|
SetNormalizeFunc 允许您添加一个函数,用于转换标志名称。添加到 FlagSet 中的标志将被翻译,当任何东西尝试查找该标志时,也会被翻译。因此,可以创建名为 “getURL” 的标志,并将其翻译为 “geturl”。然后用户可以传递 “--getUrl
",这也可能被翻译为 “geturl”,一切都能正常工作。
(*FlagSet) SetOutput
|
|
SetOutput 设置用于帮助和错误消息的目标。如果 output 为 nil,则使用 os.Stderr。
(*FlagSet) ShorthandLookup
|
|
ShorthandLookup 返回缩写标志的 Flag 结构,如果不存在则返回 nil。如果 name 的长度大于 1,则会引发 panic。
ShorthandLookup Example
|
|
(*FlagSet) String
|
|
String 定义了一个带有指定名称、默认值和用法说明的字符串标志。返回值是一个字符串变量的地址,用于存储标志的值。
(*FlagSet) StringArray
|
|
StringArray 定义了一个带有指定名称、默认值和用法说明的字符串标志。返回值是一个 []string 变量的地址,用于存储标志的值。每个参数的值不会尝试用逗号分隔。对于这种情况,请使用 StringSlice。
(*FlagSet) StringArrayP
|
|
StringArrayP 类似于 StringArray,但允许在单个短划线后使用速记字母。
(*FlagSet) StringArrayVar
|
|
StringArrayVar 定义了一个带有指定名称、默认值和用法说明的字符串标志。参数 p 指向一个 []string 变量,用于存储多个标志的值。每个参数的值不会尝试用逗号分隔。对于这种情况,请使用 StringSlice。
(*FlagSet) StringArrayVarP
|
|
StringArrayVarP 类似于 StringArrayVar,但允许在单个短划线后使用速记字母。
(*FlagSet) StringP
|
|
StringP 类似于 String,但允许在单个短划线后使用速记字母。
(*FlagSet) StringSlice
|
|
StringSlice 定义了一个带有指定名称、默认值和用法说明的字符串标志。返回值是一个 []string 变量的地址,用于存储标志的值。与 StringArray 标志相比,StringSlice 标志将以逗号分隔的值作为参数,并相应地进行拆分。例如:
--ss="v1,v2" --ss="v3"
将导致:
[]string{"v1", "v2", "v3"}
(*FlagSet) StringSliceP
|
|
StringSliceP 类似于 StringSlice,但允许在单个短划线后使用速记字母。
(*FlagSet) StringSliceVar
|
|
StringSliceVar 定义了一个带有指定名称、默认值和用法说明的字符串标志。参数 p 指向一个 []string 变量,用于存储标志的值。与 StringArray 标志相比,StringSlice 标志将以逗号分隔的值作为参数,并相应地进行拆分。例如:
--ss="v1,v2" --ss="v3"
将导致:
[]string{"v1", "v2", "v3"}
(*FlagSet) StringSliceVarP
|
|
StringSliceVarP 类似于 StringSliceVar,但允许在单个短划线后使用速记字母。
(*FlagSet) StringToInt <- v1.0.3
|
|
StringToInt 定义了一个带有指定名称、默认值和用法说明的字符串标志。返回值是一个 map[string]int 变量的地址,用于存储标志的值。每个参数的值不会尝试用逗号分隔。
(*FlagSet) StringToInt64 <- v1.0.5
|
|
StringToInt64 定义了一个带有指定名称、默认值和用法说明的字符串标志。返回值是一个 map[string]int64 变量的地址,用于存储标志的值。每个参数的值不会尝试用逗号分隔。
(*FlagSet) StringToInt64P <- v1.0.5
|
|
StringToInt64P 类似于 StringToInt64,但允许在单个短划线后使用速记字母。
(*FlagSet) StringToInt64Var <- v1.0.5
|
|
StringToInt64Var 定义了一个具有指定名称、默认值和用法字符串的字符串标志。参数 p 指向一个 map[string]int64 变量,用于存储多个标志的值。每个参数的值不会尝试用逗号分隔。
(*FlagSet) StringToInt64VarP <- v1.0.5
|
|
StringToInt64VarP 类似于 StringToInt64Var,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) StringToIntP <- v1.0.3
|
|
StringToIntP 类似于 StringToInt,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) StringToIntVar <- v1.0.3
|
|
StringToIntVar 定义了一个具有指定名称、默认值和用法字符串的字符串标志。参数 p 指向一个 map[string]int 变量,用于存储多个标志的值。每个参数的值不会尝试用逗号分隔。
(*FlagSet) StringToIntVarP <- v1.0.3
|
|
StringToIntVarP 类似于 StringToIntVar,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) StringToString <- v1.0.3
|
|
StringToString 定义了一个具有指定名称、默认值和用法字符串的字符串标志。返回值是一个 map[string]string 变量的地址,该变量用于存储标志的值。每个参数的值不会尝试用逗号分隔。
(*FlagSet) StringToStringP <- v1.0.3
|
|
StringToStringP 类似于 StringToString,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) StringToStringVar <- v1.0.3
|
|
StringToStringVar 定义了一个具有指定名称、默认值和用法字符串的字符串标志。参数 p 指向一个 map[string]string 变量,用于存储多个标志的值。每个参数的值不会尝试用逗号分隔。
(*FlagSet) StringToStringVarP <- v1.0.3
|
|
StringToStringVarP 类似于 StringToStringVar,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) StringVar
|
|
StringVar 定义了一个具有指定名称、默认值和用法字符串的字符串标志。参数 p 指向一个字符串变量,用于存储标志的值。
(*FlagSet) StringVarP
|
|
StringVarP 类似于 StringVar,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) Uint
|
|
Uint 定义了一个具有指定名称、默认值和用法字符串的 uint 标志。返回值是一个指向 uint 变量的地址,用于存储标志的值。
(*FlagSet) Uint16
|
|
Uint16 定义了一个具有指定名称、默认值和用法字符串的 uint16 标志。返回值是一个指向 uint16 变量的地址,用于存储标志的值。
(*FlagSet) Uint16P
|
|
Uint16P 类似于 Uint16,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) Uint16Var
|
|
Uint16Var 定义了一个具有指定名称、默认值和用法字符串的 uint16 标志。参数 p 指向一个 uint16 变量,用于存储标志的值。
(*FlagSet) Uint16VarP
|
|
Uint16VarP 类似于 Uint16Var,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) Uint32
|
|
Uint32 定义了一个具有指定名称、默认值和用法字符串的 uint32 标志。返回值是一个指向 uint32 变量的地址,用于存储标志的值。
(*FlagSet) Uint32P
|
|
Uint32P 类似于 Uint32,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) Uint32Var
|
|
Uint32Var 定义了一个具有指定名称、默认值和用法字符串的 uint32 标志。参数 p 指向一个 uint32 变量,用于存储标志的值。
(*FlagSet) Uint32VarP
|
|
Uint32VarP 类似于 Uint32Var,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) Uint64
|
|
Uint64 方法定义了一个具有指定名称、默认值和用法字符串的 uint64 标志。返回值是一个指向 uint64 变量的地址,用于存储标志的值。
(*FlagSet) Uint64P
|
|
Uint64P 方法类似于 Uint64方法,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) Uint64Var
|
|
Uint64Var 方法定义了一个具有指定名称、默认值和用法字符串的 uint64 标志。参数 p 指向一个 uint64 变量,用于存储标志的值。
(*FlagSet) Uint64VarP
|
|
Uint64VarP 方法类似于 Uint64Var方法,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) Uint8
|
|
Uint8 方法定义了一个具有指定名称、默认值和用法字符串的 uint8 标志。返回值是一个指向 uint8 变量的地址,用于存储标志的值。
(*FlagSet) Uint8P
|
|
Uint8P 方法类似于 Uint8方法,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) Uint8Var
|
|
Uint8Var 方法定义了一个具有指定名称、默认值和用法字符串的 uint8 标志。参数 p 指向一个 uint8 变量,用于存储标志的值。
(*FlagSet) Uint8VarP
|
|
Uint8VarP 方法类似于 Uint8Var方法,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) UintP
|
|
UintP 方法类似于 Uint方法,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) UintSlice
|
|
UintSlice 方法定义了一个具有指定名称、默认值和用法字符串的 []uint 标志。返回值是一个指向 []uint 变量的地址,用于存储标志的值。
(*FlagSet) UintSliceP
|
|
UintSliceP 方法类似于 UintSlice方法,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) UintSliceVar
|
|
UintSliceVar 方法定义了一个具有指定名称、默认值和用法字符串的 []uint 标志。参数 p 指向一个 []uint 变量,用于存储标志的值。
(*FlagSet) UintSliceVarP
|
|
UintSliceVarP 方法类似于 UintSliceVar方法,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) UintVar
|
|
UintVar 方法定义了一个具有指定名称、默认值和用法字符串的 uint 标志。参数 p 指向一个 uint 变量,用于存储标志的值。
(*FlagSet) UintVarP
|
|
UintVarP 方法类似于 UintVar方法,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) Var
|
|
Var 方法定义了一个具有指定名称和用法字符串的标志。标志的类型和值由第一个参数表示,类型为 Value,通常包含用户定义的 Value 实现。例如,调用者可以创建一个标志,通过为切片分配方法,将逗号分隔的字符串转换为字符串切片;特别是,Set 方法会将逗号分隔的字符串分解为切片。
(*FlagSet) VarP
|
|
VarP 方法类似于 Var方法,但接受一个可以在单个短划线后使用的速记字母。
(*FlagSet) VarPF
|
|
VarPF 方法类似于 VarP方法,但返回创建的标志。
(*FlagSet) Visit
|
|
Visit 方法以词典顺序或原始顺序(如果 f.SortFlags 为 false)访问标志,对每个标志调用 fn。它仅访问已设置的标志。
(*FlagSet) VisitAll
|
|
VisitAll 方法以词典顺序或原始顺序(如果 f.SortFlags 为 false)访问标志,对每个标志调用 fn。它访问所有标志,包括未设置的标志。
type NormalizedName
|
|
NormalizedName 是根据 FlagSet 规则进行标准化的标志名称(例如,使 ‘-
’ 和 ‘_
’ 等效)。
type ParseErrorsWhitelist <- v1.0.1
|
|
ParseErrorsWhitelist 结构体定义了可以忽略的解析错误。
type SliceValue <- v1.0.5
|
|
SliceValue 是所有持有值列表的标志的辅助接口。这允许对列表标志的值进行完全控制,并避免了复杂的 csv 编组和解组。
type Value
|
|
Value 是存储在标志中的动态值的接口(默认值表示为字符串)。