2023-06-15 21:22:51 +08:00
|
|
|
//
|
|
|
|
// cli_help.go
|
|
|
|
// Copyright (C) 2022 tiglog <me@tiglog.com>
|
|
|
|
//
|
|
|
|
// Distributed under terms of the MIT license.
|
|
|
|
//
|
|
|
|
|
2023-10-15 00:54:45 +08:00
|
|
|
package gconsole
|
2023-06-15 21:22:51 +08:00
|
|
|
|
|
|
|
import (
|
|
|
|
"errors"
|
|
|
|
"fmt"
|
|
|
|
)
|
|
|
|
|
|
|
|
type cHelp struct {
|
|
|
|
BaseCmd
|
|
|
|
cli IConsole
|
|
|
|
}
|
|
|
|
|
|
|
|
func NewHelpCmd(cli IConsole) *cHelp {
|
|
|
|
return &cHelp{
|
|
|
|
BaseCmd{
|
|
|
|
Name: "help",
|
|
|
|
Desc: "查看命令的使用方法",
|
|
|
|
},
|
|
|
|
cli,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (c *cHelp) Init(args []string) {
|
|
|
|
if len(args) == 0 {
|
|
|
|
return
|
|
|
|
}
|
|
|
|
c.Action = func() error {
|
|
|
|
cmds := c.cli.GetCmds()
|
|
|
|
cmd, ok := cmds[args[0]]
|
|
|
|
if !ok {
|
|
|
|
return errors.New("指定的命令不存在")
|
|
|
|
}
|
|
|
|
fmt.Println(cmd.GetHelp())
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (c *cHelp) GetHelp() string {
|
|
|
|
return c.Desc
|
|
|
|
}
|