From e2a6e4898e1485a5e3363a8ccc9869a27ff1290b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=99=BD=E8=8C=B6=E6=B8=85=E6=AC=A2?= Date: Fri, 8 Nov 2024 17:25:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=98=BE=E7=A4=BA=E5=B8=AE?= =?UTF-8?q?=E5=8A=A9=E6=96=87=E6=A1=A3=E7=9A=84err=E5=88=A4=E6=96=AD?= =?UTF-8?q?=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- init.go | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/init.go b/init.go index d7f7c6e..fe02370 100644 --- a/init.go +++ b/init.go @@ -69,7 +69,7 @@ func parseCliParam(cliReceiver any) error { // 解析命令行参数 parser := flags.NewParser(cliReceiver, flags.Default) if _, err := parser.ParseArgs(os.Args[1:]); nil != err { - if strings.Contains(strings.ToLower(err.Error()), "usage:") { + if IsShowHelperErr(err) { // 显示帮助文档, 严格来讲,不是error, go-flags库利用error实现 return err } @@ -132,3 +132,19 @@ func parseFilParam(fileReceiver any, configFileList []*string) error { return nil } + +// IsShowHelperErr 判断报错是否为显示帮助手册 +// +// Author : go_developer@163.com<白茶清欢> +// +// Date : 17:23 2024/11/8 +func IsShowHelperErr(err error) bool { + if nil == err { + return false + } + if strings.HasPrefix(strings.ToLower(err.Error()), "usage:") { + // 显示帮助文档, 严格来讲,不是error, go-flags库利用error实现 + return true + } + return false +}