golang中的flag包的使用
阿新 • • 發佈:2018-12-17
package flag
import "flag"
flag包實現了命令列引數的解析。
要求:
使用flag.String(), Bool(), Int()等函式註冊flag
本次使用flag.Stirng()來講解一些如何使用
1.首先根據程式碼來分析
package main import ( "flag" "fmt" ) //flag的作用是用來解析命令列的引數 // go run main.go -ip func main(){ //返回的是一個ip的指標 ip := flag.String("ip","127.0.0.0","help message for flagname") flag.Parse() fmt.Printf("%v\n",*ip) }
flag.String(arg1,arg2,arg3)*String
agr1:就是key了
agr2:就是key的預設值了
arg3:就是key的提示幫助資訊了
2、通過命令列的方式來執行
go run main.go 方式直接執行不加引數,則列印預設值
go run main.go -ip 則提示您相關的幫助資訊,可以看到 args3的資訊輸出到下面了
go run main.go -ip=192.168.1.128 則替換你之前為ip設定的127.0.0.1的預設值
也可這樣 go run main.go -ip 192.168.1.128 (前提是隻有非bool型別的才可以)
3、通過在golang編輯器中設定來替換預設的引數值
步驟(1)
步驟(2)
在Progrom arguments:中配置的資訊,將會在程式的執行時被獲取到並替換對應flag.String(arg1,arg2,arg3),arg1的預設值
注意這個時候你就不要使用【命令列】來運行了,因為你配置的引數資訊在gland中,所以你直接點選goland的編輯器【執行】按鈕就可以了,
你會發現,ip的預設值已經被替換了。
其他的相關的操作資訊可以看Go語言的標準庫