gpt4 book ai didi

golang 从打印默认值中标记隐藏选项

转载 作者:IT王子 更新时间:2023-10-29 02:21:34 25 4
gpt4 key购买 nike

这是我的实际代码:

package main

import (
"flag"
)

var loadList = ""
var threads = 50
var skip = 0


func main() {

//defaults variables
flag.StringVar(&loadList, "f", "", "load links list file (required)")
flag.IntVar(&threads,"t", 50, "run `N` attempts in parallel threads")
flag.IntVar(&skip, "l", 0, "skip first `n` lines of input")
flag.Parse()

flag.PrintDefaults()

}

这是输出:

-f 字符串 加载链接列表文件(必需) -ln 跳过前 n 行输入 -tN 在并行线程中运行 N 次尝试(默认 50 次)

我想隐藏 printdefaults -l 和 -t,我该怎么做?

最佳答案

可能有多种方法可以做到这一点。一个简单的方法是使用 VisitAll :

func VisitAll(fn func(*Flag))

在您传递的函数中,您可以根据 Flag 的任何导出字段决定是否输出标志。


例子:

flag.VisitAll(func(f *flag.Flag) {
if f.Name == "l" || f.Name == "t" {
return
}
fmt.Println("Flag: ", f)
})

在以下位置运行它:https://play.golang.org/p/rsrKgWeAQf

关于golang 从打印默认值中标记隐藏选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46730220/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com