猿问

如何在 Golang 中查找来自控制台的标志数

我正在从控制台传递参数。还有一些标志。喜欢:

go run test.go "-IP=10.10.10.10" "-db=kite" "-wv=45" "-cv=75" "A = value1" "B = value2" "C = 100" "D := ((A-B)/A)*C" "D ?"

这里, -IP-db-wv,-wc这四个是标志,其他人作为我知道的正常参数传递。

标志的数量可以是可变的。

我怎么知道有多少标志被传递给我的程序。在这种情况下,4会传递标志。


蝴蝶不菲
浏览 150回答 1
1回答

凤凰求蛊

如果使用标准flag包来解析命令行标志,则可以调用 NFlag 函数来获取标志的数量:package mainimport "fmt"import "flag"func main() {        flag.Bool("a", true, "A value");        flag.Bool("b", true, "B value");        flag.Parse();        fmt.Println(flag.NFlag())}测试:$ go run test.go 0$ go run test.go -a1$ go run test.go -a -b2
随时随地看视频慕课网APP

相关分类

Go
我要回答