import "github.com/bobbaicloudwithpants/bobra"
bobra 是一个模仿了 github.com/spf13/cobra 的包。 bobra 中实现了精简版的 cobra 的功能, 使得命令行程序开发者能够快速的建立耦合度低,高度模块化的命令行程序。
- Variables
- func LogError(e error)
- type Command
- func (c *Command) AddCommand(cmds ...*Command)
- func (c *Command) CommandPath() string
- func (c *Command) Commands() []*Command
- func (c *Command) Execute() error
- func (c *Command) ExecuteC() (err error)
- func (c *Command) Find(args []string) (*Command, []string, error)
- func (c *Command) Flags() *flag.FlagSet
- func (c *Command) GlobalFlags() *flag.FlagSet
- func (c *Command) HasAvailableFlags() bool
- func (c *Command) HasAvailableGlobalFlags() bool
- func (c *Command) HasAvailableLocalFlags() bool
- func (c *Command) HasAvailableSubCmds() bool
- func (c *Command) HasParent() bool
- func (c *Command) HasSubCommands() bool
- func (c *Command) IsAvailable() bool
- func (c *Command) LocalFlags() *flag.FlagSet
- func (c *Command) LongIntroduction() string
- func (c *Command) Name() string
- func (c *Command) Parent() *Command
- func (c *Command) ParseFlags(args []string) error
- func (c *Command) Root() *Command
- func (c *Command) Runnable() bool
- func (c *Command) SetGlobalFlags(flags *flag.FlagSet)
- func (c *Command) ShortIntroduction() string
- func (c *Command) Usage() error
- func (c *Command) UsageFunc() (f func(*Command) error)
- func (c *Command) UsageTemplate() string
- func (c *Command) UseLine() string
- type ObjectNotFound
var (
// 当找到 "help" 等命令行参数时抛出
FoundHelp = errors.New("Found Help")
)
func LogError(e error)
打印异常的函数
type Command struct {
// 命令的使用名称
Use string
// 命令的较短介绍
Short string
// 命令的较长介绍
Long string
// 命令使用介绍
Example string
// 运行这个命令执行的函数
Run func(cmd *Command, args []string)
// contains filtered or unexported fields
}
func (*Command) AddCommand
func (c *Command) AddCommand(cmds ...*Command)
添加子命令
func (*Command) CommandPath
func (c *Command) CommandPath() string
返回这条命令从根命令开始向下,直到当前命令c的命令名称组合,用 ' ' 分割
func (c *Command) Commands() []*Command
func (c *Command) Execute() error
执行命令,调用链为:Execute--->ExecuteC--->execute
func (c *Command) ExecuteC() (err error)
找到要执行的命令,或者抛出异常
func (c *Command) Find(args []string) (*Command, []string, error)
从参数中找到要执行的子命令, 如果没有子命令则返回这个命令本身,如果找不到则返回错误
func (c *Command) Flags() *flag.FlagSet
返回命令的参数列表, 如果 flags 为空则初始化这个flag
func (*Command) GlobalFlags
func (c *Command) GlobalFlags() *flag.FlagSet
获取全局的flags
func (*Command) HasAvailableFlags
func (c *Command) HasAvailableFlags() bool
判断命令是否存在有效的flags
func (*Command) HasAvailableGlobalFlags
func (c *Command) HasAvailableGlobalFlags() bool
判断命令是否存在全局有效的flags
func (*Command) HasAvailableLocalFlags
func (c *Command) HasAvailableLocalFlags() bool
判断命令是否存在局部有效的flags
func (*Command) HasAvailableSubCmds
func (c *Command) HasAvailableSubCmds() bool
判断该命令是否有有效的子命令
func (c *Command) HasParent() bool
判断 c 是否有父命令
func (*Command) HasSubCommands
func (c *Command) HasSubCommands() bool
判断 c 是否有子命令
func (*Command) IsAvailable
func (c *Command) IsAvailable() bool
判断该命令是否有效
func (*Command) LocalFlags
func (c *Command) LocalFlags() *flag.FlagSet
返回仅子命令可以使用的局部flags
func (*Command) LongIntroduction
func (c *Command) LongIntroduction() string
返回这条命令的完整介绍,应放在 Usage 的开头
func (c *Command) Name() string
返回命令的名字
func (c *Command) Parent() *Command
返回当前命令的父命令
func (*Command) ParseFlags
func (c *Command) ParseFlags(args []string) error
将args参数转换为flags参数
func (c *Command) Root() *Command
返回该命令的根命令
func (c *Command) Runnable() bool
根据是否存在 Run 函数指针来判断这个命令能否运行
func (*Command) SetGlobalFlags
func (c *Command) SetGlobalFlags(flags *flag.FlagSet)
设置全局可用的flags
func (*Command) ShortIntroduction
func (c *Command) ShortIntroduction() string
返回这条命令的简短介绍,会返回在命令Usage的子命令列表中
func (c *Command) Usage() error
显示命令的使用方法
func (c *Command) UsageFunc() (f func(*Command) error)
返回能够用于输出【使用方法】的函数
func (*Command) UsageTemplate
func (c *Command) UsageTemplate() string
func (c *Command) UseLine() string
输出对于这条命令的完整描述
type ObjectNotFound struct {
Type string
Name string
}
当命令没有找到时抛出
func (e ObjectNotFound) Error() string
Generated by godoc2md