go-doc-io

命令行参数

os包

1
2
3
for i, v := range os.Args {
fmt.Printf("args[%v]=%v\n", i, v)
}

flag包

flag包可以方便的解析命令行参数,而且参数顺序可以随意

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import (
"fmt"
"flag"
)

func main() {
var user string
var pwd string
var host string
var port int

flag.StringVar(&user, "u", "", "用户名,默认为空")
flag.StringVar(&pwd, "pwd", "", "密码,默认为空")
flag.StringVar(&host, "h", "localhost", "主机名,默认为localhost")
flag.IntVar(&port, "port", 3306, "端口号,默认为3306")

flag.Prase()

fmt.Printf("user=%v pwd=%v host=%v port=%v", user, pwd, host, port)
}