本文只做为博主的go语言学习笔记。golang
对命令行参数的解析,只是在运行时使用的,好比如下命令:go run gomain -conf conf.toml函数
没有办法再go build时使用。学习
咱们写了一个go程序,想在运行时经过命令行参数加载配置文件。要实现这个功能,能够使用flag解析入参,能够参考文章:ui
https://studygolang.com/articles/4706spa
我有一个conf.go文件, 主要内容以下:命令行
我经过上述代码进行flag的解析,第一个参数是一个指针,会将传进来的值赋给这个指针执行的内容;第二个是参数的名称,第三个则是参数的默认值。就是go run gomain时,若是不加命令行默认set进去的值,最后一个参数就是一个解释说明。3d
那么我在真正的main函数里面调用一下这个init。指针
注意:在进行flag的解析以前,必定要flag.Parse()。不然是解析不了滴~~无论怎么搞,都会是个空的文件。server
go run main.go -conf conf.toml
go run main.go conf=conf.tomlblog
命令行传参只有这两种形式,不要自创形式。
go build -o output/bin/nlu-server nlu/cmd
go build命令用于编译出能够直接运行的二进制文件。命令比较简单-o 后面第一个参数是编译产出的路径以及文件名,第二个参数则是main包
注意:go build命令要在go path下执行,否则生产不出来二进制文件