golang实现命令行程序的使用帮助功能
通过flag包我们可以很方便的实现命令行程序的参数标志,接下来我们来看看如何实现命令行程序的使用帮助,通常以参数标志-h或--help的形式来使用。
自动生成使用帮助
我们只需要声明其他参数标志,并执行解析,flag包会帮我们自动生成使用帮助。
//main.go
//输出2个数,输出较大的数
package main
import (
"flag"
"fmt"
"math"
)
func main() {
firstFlag := flag.Float64("first", 0, "第一个数")
secondFlag := flag.Float64("second", 0, "第二个数")
flag.Parse()
max := math.Max(*firstFlag, *secondFlag)
fmt.Print(max)
}编译生成后执行看看:
E:\GOPATH\src\max>max.exe -help
Usage of max.exe:
-first float
第一个数
-second float
第二个数E:\GOPATH\src\max>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:\GOPATH\src\max>max.exe -help
程序名称: max
描述: 输出2个数,输出较大的数.
示例:
1. test -help
2. max -first=5 -second=66
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对本站的支持。
版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。
关注官方微信