go-命令行
命令行参数
os.Args
是一个string的切片,用来存储所有的命令行参数
import (
"fmt"
"os"
)
func main() {
fmt.Printf("len(os.Args): %v\n", len(os.Args))
for _, v := range os.Args {
fmt.Printf("v: %v\n", v)
}
}
flag包用来解析命令行参
import (
"flag"
"fmt"
)
func main() {
var user string
var pwd string
var host string
var port int
flag.StringVar(&user, "u", "admin", "login username")
flag.StringVar(&pwd, "pwd", "admin", "login password")
flag.StringVar(&host, "h", "localhost", "localhost")
flag.IntVar(&port, "port", 9090, "port")
flag.Parse()
fmt.Printf("user: %v password: %v host: %v port: %v\n", user, pwd, host, port)
}