Golang flag package code snippet

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import "flag"

func main() {
// -t string
var makeType = flag.String("t", "", "Type of generation [project|test]")

// usage message
flag.Usage = func() {
fmt.Println("Usage:")
flag.PrintDefaults()
}

flag.Parse()

// 取得參數 value
switch *makeType {
case "project":
// blah...
break
case "test":
// blah...
break
default:
flag.Usage() // print usage
break
}
}