在下面的代码中我定义了一个命令,其中有两个选项: 1. myapp info --flag1文本 2. myapp info --flag2 如果没有指定这两个选项,我想显示helpCommand
var infoCmd = &cobra.Command{
Use: "info",
Short: "A brief description of your command",
Run: func(cmd *cobra.Command, args []string) {
var infoURL string
if flag1 != "" {
doSomething()
} else if flag2 { //this is a boolean flag
doSomethingElse()
} else {
// Show the default help here
}
},
}
在眼镜蛇README中,解释了helpCommand的用法
myapp help info
或myapp info --help
或myapp info --nonexistentoption
,但没有关于如何自愿实际调用该方法的内容。有什么指针吗?
答案 0 :(得分:1)
我认为这只是通过lib(未测试)来看:
var infoCmd = &cobra.Command{
Use: "info",
Short: "A brief description of your command",
Run: func(cmd *cobra.Command, args []string) {
var infoURL string
if flag1 != "" {
doSomething()
} else if flag2 { //this is a boolean flag
doSomethingElse()
} else {
// Show the default help here
cmd.Help()
}
},
}
见这里:
// Help puts out the help for the command.
// Used when a user calls help [command].
// Can be defined by user by overriding HelpFunc.
func (c *Command) Help() error {
c.HelpFunc()(c, []string{})
return nil
}
一般来说,自述文件仅提供一些入门和概述信息,您通常需要打开godocs(内联文档)才能正确理解包:godoc cobra: help command