1
github.com/spf13/cobra
パッケージを使用してプロセスのコマンドライン引数を解釈していますが、パラメータ値の決定方法を理解できません。github.com/spf13/cobraを使用してパラメータ値を取得する
私はパラメータ値で更新されます内部変数を使用しての作業プログラム(以下)は次のように私が手に出力され
OptPort := 8088
rootCmd := &cobra.Command{
Use: "server",
Short: "Root command short version",
Long: "Root command long version",
}
startCmd := &cobra.Command{
Use: "start",
Short: "Start command short version",
Long: "Start command long version",
Run: func(cmd *cobra.Command, args []string) {
fmt.Println("args: " + strings.Join(args, " "))
fmt.Println("port: " + OptPort)
},
}
startCmd.Flags().IntVarP(&OptPort, "port", "p", OptPort, "Port to listen to")
rootCmd.AddCommand(startCmd)
rootCmd.Execute()
を:
args:
port: 8088
私は私ができることを実現ポート変数を調べることでポート値を取得しますが、値がargs変数にも含まれると思います。私は間違ったことをしているので、args変数は空ですか? args変数が空であると予想される場合、args変数の目的は何ですか?