代码拉取完成,页面将自动刷新
package yscmd
import (
"context"
"gitee.com/kmyss/gf-ex/yslog"
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gcmd"
)
const CMD_HELP = "help"
type CmdHelpBuilder struct {
CommandBuilderCore
}
func (b *CmdHelpBuilder) SetFlag(builder IFlagBuilder, _ ...string) bool {
return false
}
func (b *CmdHelpBuilder) Init(ctx context.Context) {
b.CommandBuilderCore.Init(ctx)
b.C.Run = b.run
b.C.Use = CMD_HELP
b.C.Short = "显示帮助信息"
}
func (b *CmdHelpBuilder) SetChildCommand(builder ICommandBuilder) bool {
return false
}
func (b *CmdHelpBuilder) run(c *Command) {
yslog.Debug("CmdHelpBuilder Run")
args := gcmd.GetArgAll()
cmdStr := ""
for i, arg := range args {
if arg == CMD_HELP {
cmdStr = gcmd.GetArg(i + 1).String()
}
}
if g.IsEmpty(cmdStr) {
c.parent.ShowHelp()
} else {
cmd := c.parent.commands.Get(cmdStr)
if !g.IsEmpty(cmd) {
cmd.(*Command).ShowHelp()
} else {
yslog.Errorf("%s 命令不存在!", cmdStr)
c.parent.ShowHelp()
}
}
}
func CmdHelp(ctx context.Context) *Command {
b := CmdHelpBuilder{}
b.Init(ctx)
return b.Command()
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。