首頁 >後端開發 >Golang >如何在GoLang中為子指令建立獨立的FlagSet?

如何在GoLang中為子指令建立獨立的FlagSet?

Linda Hamilton
Linda Hamilton原創
2024-12-09 20:38:10751瀏覽

How to Create Independent FlagSets in GoLang for Subcommands?

GoLang 中的獨立FlagSet

簡介:

簡介:

簡介:

Go 中的FlagSet種定義機制並解析命令列標誌。雖然文件建議能夠建立獨立的集來在使用者介面中實現子命令,但目前仍不清楚如何在實踐中實現此功能。

問題:

如何我們可以在GoLang中定義獨立的FlagSet來支援命令列中的子命令嗎介面?

答案:

區分子指令

f1 := flag.NewFlagSet("f1", flag.ContinueOnError)
reset := f2.Bool("reset", false, "")
要實現獨立的FlagSet,關鍵區別在於子命令的辨識解析標誌之前。方法如下:

1.建立 FlagSet:

定義多個 FlagSet,每個子指令一個。
switch os.Args[1] {
  case "apply":
    f1.Parse(os.Args[2:])
  case "reset":
    f2.Parse(os.Args[2:])
}

2.區分子指令:檢查指令列參數以辨識活動子指令。例如,如果指令的前綴是“apply”,則執行FlagSet“f1”。 根據子命令分離不同FlagSet的解析,我們可以維護僅適用的獨立標誌集到各自的子命令。

以上是如何在GoLang中為子指令建立獨立的FlagSet?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn