golang命令行参数解析

Posted traditional

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang命令行参数解析相关的知识,希望对你有一定的参考价值。

package main

import (
	"fmt"
	"os"
)

func main(){
	s:= os.Args
	fmt.Println(s)
}

  直接执行

输出结果:[C:UsersAdministratorAppDataLocalTemp\\___go_build_2_go__1_.exe]

技术分享图片

 

还可以使用flag模块

package main

import (
	"flag"
	"fmt"
)

func main(){
	var name string
	var age int
	var gender string
	var length int
	//参数一:变量的指针,只有这样才可以修改
	//参数二:传值所指定的名字,在终端中就可以使用--a 16或者-a 16这样的形式传值
	//参数三:默认值,不传值的话,使用默认值
	//参数四:注释
	flag.IntVar(&age,"a",0,"这是年龄")
	flag.IntVar(&length,"l",160, "这是身高")
	flag.StringVar(&name,"n","无名","这是名字")
	flag.StringVar(&gender,"g","秀吉","这是性别")

	//不要忘了这句,加上它才会解析命令行
	flag.Parse()

	fmt.Println(name, age, gender, length)
}

  技术分享图片

 

以上是关于golang命令行参数解析的主要内容,如果未能解决你的问题,请参考以下文章

golang 命令行参数解析 hflag

golang命令行参数解析

Golang TCP客户端命令行解析,根据参数连接服务器

Golang TCP客户端命令行解析,根据参数连接服务器

Golang三剑客之PflagViperCobra

Go语言标准库之命令行参数的解析:flag 库详解