golang實現命令行程序的使用幫助

經過flag包咱們能夠很方便的實現命令行程序的參數標誌,
接下來咱們來看看如何實現命令行程序的使用幫助,
一般以參數標誌-h--help的形式來使用.golang

自動生成使用幫助

咱們只須要聲明其餘參數標誌,並執行解析,flag包會幫咱們自動生成使用幫助.shell

//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來實現自定義使用幫助.code

//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

參考get

相關文章
相關標籤/搜索