Go (golang)、Viper、およびCobraを使用して記述されたコードを保守しています。
1行で、次のとおりです。
rootCmd.PersistentFlags().String("cfg", "", "A description")
そして、次の行に
rootCmd.PersistentFlags().StringP("output", "o", ".", "Another description")
この文脈でString
とはどう違いますか?StringP
さまざまなチュートリアルの使用例を見ると、やなど、さまざまなメソッドのバージョンP
と非バージョンがあるようです。P
StringVarP
StringVar
これらのバージョンの違いは何ですか? の意味は何P
ですか?
P
特定のメソッドに対応するメソッドがあるかどうかを確認する方法はありP
ますか?
検索エンジンは、cobra や viper のチュートリアル ページに誘導する傾向があり、これらのページでは、対応するものP
や非P
対応するものについて説明することなく、これらの方法を利用しています。
pflags
パラメータが短い(1文字)形式であるかどうかに関係している可能性があることを示唆する資料を見つけました。これでしょうか?
編集後のメモ: この質問に対する回答を受け取ったのでspf13/pflag
、上記の golang フレームワークによって実際に内部で使用されているようです。ただし、cobra や viper を使用するときに pflags のドキュメントを確認する必要があるかどうかは、すぐにはわかりません。
これは Q&A サイトであるため、この回答を探しているときに入力したであろうキーワードの多くを削除した編集を元に戻しました.