ホームページ > バックエンド開発 > Golang > GoLang でサブコマンド用に独立した FlagSet を作成するにはどうすればよいですか?

GoLang でサブコマンド用に独立した FlagSet を作成するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-09 20:38:10
オリジナル
826 人が閲覧しました

How to Create Independent FlagSets in GoLang for Subcommands?

GoLang の独立した FlagSets

はじめに:

Go の FlagSet は定義メカニズムを提供しますコマンドラインフラグの解析。ドキュメントでは、ユーザー インターフェイスでサブコマンドを実装するための独立したセットを作成する機能が示唆されていますが、実際にこの機能をどのように実現するかは不明のままです。

質問:

方法コマンドラインのサブコマンドをサポートするために、GoLang で独立した FlagSet を定義できますか?インターフェイス?

答え:

サブコマンドの区別

独立した FlagSet を実現するには、重要な区別はサブコマンドを識別することにあります。フラグを解析する前に。方法は次のとおりです:

1. FlagSet を作成します。

サブコマンドごとに 1 つずつ、複数の FlagSet を定義します。

f1 := flag.NewFlagSet("f1", flag.ContinueOnError)
reset := f2.Bool("reset", false, "")
ログイン後にコピー

2.サブコマンドの区別:

コマンドライン引数を調べて、アクティブなサブコマンドを特定します。たとえば、コマンドのプレフィックスが "apply" の場合、FlagSet "f1" を実行します。

switch os.Args[1] {
  case "apply":
    f1.Parse(os.Args[2:])
  case "reset":
    f2.Parse(os.Args[2:])
}
ログイン後にコピー

サブコマンドに基づいて異なる FlagSet の解析を分離することで、適用のみを行う独立したフラグ セットを維持できます。それぞれのサブコマンドに。

以上がGoLang でサブコマンド用に独立した FlagSet を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート