GO語言標準庫—命令行參數解析FLAG
阿新 • • 發佈:2019-03-09
nbsp ack 圖片 mep linux func 常用 命令行 mage
flag包是Go語言標準庫提供用來解析命令行參數的包,使得開發命令行工具更為簡單
常用方法
1.flag.Usage
輸出使用方法,如linux下ls -h的幫助輸出
2.flag.Type(參數名, 默認值, 使用提示)
Type為類型 如String, Int, Uint 調用相應的flag.Sring flag.Int flag.Uint方法
方法返回相應類型的指針
3.flag.TypeVar(指針, 參數名, 默認值, 使用提示)
與flag.Type方法基本相同,不同的是多一個指針參數,將使用傳入的指針,不會再創建指針返回
4.flag.Args
返回解析完命令行參數後的其他參數,如./sh -name cqh a1 a2,將返回a1 a2
5.flag.Parse
執行解析
package main import ( "flag" "fmt" ) func main() { namePtr := flag.String("name", "username", "姓名") agePtr := flag.Int("age", 18, "年齡") musclePtr := flag.Bool("muscle", true, "是否有肌肉") var email string flag.StringVar(&email, "email", "[email protected]", "郵箱") flag.Parse() args := flag.Args() fmt.Println("name", *namePtr) fmt.Println("age", *agePtr) fmt.Println("muscle", *musclePtr) fmt.Println("email", email) fmt.Println("args", args) }
GO語言標準庫—命令行參數解析FLAG