如何提取注册信息?



我正在将眼镜蛇与我的Golang应用程序一起使用。如何获取我已向 Cobra 注册的命令和值的列表。

如果我添加一个根命令,然后添加一个显示名称命令。

var Name = "sample_"
var rootCmd = &cobra.Command{Use: "Use help to find out more options"}
rootCmd.AddCommand(cmd.DisplayNameCommand(Name))

我是否可以通过使用某些 Cobra 函数从我的程序中知道 Name 中的值是什么?理想情况下,我想在 Name 中访问此值并使用它来检查某些逻辑。

可以使用存储在Name变量中的值在程序中执行操作。眼镜蛇的一个用法示例是:

var Name = "sample_"
var rootCmd = &cobra.Command{
Use:   "hello",
Short: "Example short description",
Run:   func(cmd *cobra.Command, args []string) {
// Do Stuff Here
},
}
var echoCmd = &cobra.Command{
Use:   "echo",
Short: "Echo description",
Run:   func(cmd *cobra.Command, args []string) {
fmt.Printf("hello %s", Name)
},
}
func init() {
rootCmd.AddCommand(echoCmd)
}
func Execute() {
if err := rootCmd.Execute(); err != nil {
fmt.Println(err)
os.Exit(1)
}
}

'

在上面的代码中,您可以看到hello是根命令,echo是子命令。如果你hello echo,它将回显存储在Name变量中的值sample_

你也可以做这样的事情:

var echoCmd = &cobra.Command{
Use:   "echo",
Short: "Echo description",
Run:   func(cmd *cobra.Command, args []string) {
// Perform some logical operations
if Name == "sample_" {
fmt.Printf("hello %s", Name)
} else {
fmt.Println("Name did not match")
}
},
}

要了解有关如何使用眼镜蛇的更多信息,您还可以从以下链接查看我的项目。

https://github.com/bharath-srinivas/nephele

希望这有帮助。

相关内容

  • 没有找到相关文章

最新更新