本文只做爲博主的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下執行,否則生產不出來二進制文件