命令行參數Args&Flag
尚硅谷Golang課

命令行參數Args&Flag

func main() {
	fmt.Println("命令行參數有", len(os.Args))
	//遍歷os.Args切片 得到所有輸入的參數值
	for i, v := range os.Args {
		fmt.Printf("args[%v]=%v\n", i, v)
	}
	fmt.Println("=====================")

	//flag方法 先定義幾個變量用於接收參數值
	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")
	//前面有亂打的字就不行 比如...exe 12354 -u tom會調用預設

	flag.Parse() //這個一定要調用

	//輸出結果
	fmt.Printf("user=%v pwd=%v host=%v port=%v",
		user, pwd, host, port)
}

上次修改於 2021-08-01

此篇文章的評論功能已經停用。