加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

golang实现命令行程序的使用帮助

发布时间:2020-12-16 18:16:59 所属栏目:大数据 来源:网络整理
导读:通过 flag 包我们可以很方便的实现命令行程序的参数标志, 接下来我们来看看如何实现命令行程序的使用帮助, 通常以参数标志 -h 或 --help 的形式来使用. 自动生成使用帮助 我们只需要声明其他参数标志,并执行解析, flag 包会帮我们自动生成使用帮助. //main.g

通过flag包我们可以很方便的实现命令行程序的参数标志,
接下来我们来看看如何实现命令行程序的使用帮助,
通常以参数标志-h--help的形式来使用.

自动生成使用帮助

我们只需要声明其他参数标志,并执行解析,flag包会帮我们自动生成使用帮助.

//main.go
//输出2个数,输出较大的数
package main

import (
	"flag"
	"fmt"
	"math"
)

func main() {
	firstFlag := flag.Float64("first","第一个数")
	secondFlag := flag.Float64("second","第二个数")
	flag.Parse()
	max := math.Max(*firstFlag,*secondFlag)
	fmt.Print(max)
}

编译生成后执行看看:

E:GOPATHsrcmax>max.exe -help
Usage of max.exe:
  -first float
        第一个数
  -second float
        第二个数

E:GOPATHsrcmax>max.exe -first=5 -second=66
66

自定义使用帮助

也许你不大喜欢或不满足于自动生成的使用帮助,那么也你可以试试自定义使用帮助. 同样我们使用flag包,但这里重写了flag.Usage来实现自定义使用帮助.

//main.go
package main

import (
	"flag"
	"fmt"
)

const help = `
程序名称: max
描述: 输出2个数,输出较大的数.
示例: 
1. test -help
2. max -first=5 -second=66
`

func main() {
	flag.Usage = func() {
		fmt.Print(help)
	}
	flag.Parse()
	//这里只实现使用帮助.
}

编译生成后执行看看:

E:GOPATHsrcmax>max.exe -help

程序名称: max
描述: 输出2个数,输出较大的数.
示例:
1. test -help
2. max -first=5 -second=66

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读