通過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
參考