package mainimport ("flag""fmt"
)//声明变量用于接收命令行传入的参数值
var (name stringage intaddress *stringid *int
)func init() {//通过传入变量地址的方式,绑定命令行参数到string变量flag.StringVar(&name,   //第一个参数:存放值的参数地址"name",  //第二个参数:命令行参数的名称"匿名",    //第三个参数:命令行不输入时的默认值"您的姓名") //第四个参数:该参数的描述信息,help命令时会显示//通过传入变量地址的方式,绑定命令行参数到int变量flag.IntVar(&age,        //第一个参数:存放值的参数地址"age",       //第二个参数:命令行参数的名称-1,          //第三个参数:命令行不输入时的默认值"您的年龄")   //第四个参数:该参数的描述信息,help命令时会显示//和前面两个变量的获取方式不同,这个api没有传入变量地址,而是把命令行参数值的地址返回了address = flag.String("address", //第一个参数:命令行参数的名称"未知",     //第二个参数:命令行不输入时的默认值"您的住址")   //第三个参数:该参数的描述信息,help命令时会显示id = flag.Int("id", //第一个参数:命令行参数的名称-1,     //第二个参数:命令行不输入时的默认值"身份ID")   //第三个参数:该参数的描述信息,help命令时会显示
}func main() {//处理入参flag.Parse()//入参已经被赋值给各个变量,可以使用了fmt.Printf("%s您好, 您的年龄:%d, 您的住址:%s, 您的ID:%d\n\n", name, age, *address, *id)fmt.Println("---遍历有输入的参数(开始)---")//Visit方法会遍历有输入的参数,flag.Flag可以将参数的名称、值、默认值、描述等内容取到flag.Visit(func(f *flag.Flag){fmt.Printf("参数名[%s], 参数值[%s], 默认值[%s], 描述信息[%s]\n", f.Name, f.Value, f.DefValue, f.Usage)})fmt.Println("---遍历有输入的参数(结束)---\n")fmt.Println("---遍历所有的参数(开始)---")//VisitAll方法会遍历所有定义的参数(包括没有在命令行输入的),flag.Flag可以将参数的名称、值、默认值、描述等内容取到flag.VisitAll(func(f *flag.Flag){fmt.Printf("参数名[%s], 参数值[%s], 默认值[%s], 描述信息[%s]\n", f.Name, f.Value, f.DefValue, f.Usage)})fmt.Println("---遍历所有的参数(结束)---\n")
}

可参考链接:https://blog.csdn.net/boling_cavalry/article/details/87901677

go flag包获取命令行参数使用示例相关推荐

  1. c语言程序的命令行输入,C程序获取命令行参数

    命令行参数 命令行界面中,可执行文件可以在键入命令的同一行中获取参数用于具体的执行命令.无论是Python.Java还是C等等,这些语言都能够获取命令行参数(Command-line argument ...

  2. Go获取命令行参数及信号量处理

    部署golang项目时难免要通过命令行来设置一些参数,那么在golang中如何操作命令行参数呢?可以使用os库和flag库. golang os库获取命令行参数 os可以通过变量Args来获取命令参数 ...

  3. python 命令行参数-python获取命令行参数的方法(汇总)

    介绍python获取命令行参数的方法:getopt模和argparse模块. python版本:2.7 一.getopt模块 主要用到了模块中的函数: options, args = getopt.g ...

  4. MFC 获取命令行参数

    在MFC程序中,可以用以下几种方法来获取命令行参数. 为方便说明,我们假设执行了命令:C:/test/app.exe -1 -2 方法一 ::GetCommandLine(); 将获取到 " ...

  5. MFC中获取命令行参数的几种方法

    在MFC程序中,可以用以下几种方法来获取命令行参数. 为方便说明,我们假设执行了命令:C:/test/app.exe -1 -2 方法一 ::GetCommandLine(); 将获取到 " ...

  6. python获取命令行参数_Python获取命令行参数的正确方法,案例详解

    最近编写一个python程序的时候,需要去获取python命令行的参数,因此这里记录下如何获取命令行参数的方法. 一.sys 模块 在 Python 中,sys 模块是一个非常常用且十分重要的模块,通 ...

  7. Python:获取命令行参数

    使用sys模块 代码: import sysprint("第1个参数是:" + sys.argv[0]) print("第2个参数是:" + sys.argv[ ...

  8. 【WPF】如何获取命令行参数

    应用程序以 Main 方法为入口点,如果为 Main 方法指定一个 string[] 类型的参数,在程序运行时,这个参数会获取到传递给应用程序的命令行参数. 而 WPF 应用程序比较特殊,因为在VS中 ...

  9. php cmd 命令行参数,php获取命令行参数

    $argv获取 $argv 可以捕获命令行中php命令后的参数, 以空格分离 // 参考下面所示 var_dump($argv); // 执行命令 // $ php getopt.php www.01 ...

最新文章

  1. 用栈来表示队列,用队列来表示栈
  2. python列表各种切片姿势
  3. IntelliJ IDEA使用(二):tomcat和jetty配置(转自:http://www.cnblogs.com/jenkinschan/p/6052948.html)
  4. Swoole命令行输出但浏览器会超时
  5. sqlplus中调用shell_(转)shell 调用sqlplus各种情况示例
  6. 4.19. 在线用户表
  7. Linux安装配置apache
  8. Java线程池的实现原理,你清楚么?
  9. Youki的笔记本重装系统的方法~
  10. 日期选择窗口_Excel攻略|添加日期、智能填充、多窗口同步、两列(行)交换
  11. 【华为OJ】按单词将句子逆序
  12. php的链接查询,php – 使用指向另一个查询的链接运行查询.
  13. 西门子 PLC 和 AB罗克韦尔 PLC 有什么区别?
  14. EPLAN教程——导出CAD如何快捷配置
  15. python 正则re模块 group() groups()
  16. 2006中国IT10大丑闻
  17. 数据竞赛修炼笔记之快手用户活跃度的预测
  18. 计算机系固态硬盘机械硬盘,直观:如何在固态硬盘+机械硬盘上安装系统_IT /计算机_资料...
  19. 计算机强制退出程序键,电脑强制关闭程序按哪三个键
  20. python百度地图标注自己的店名_百度地图上怎么显示店名 百度地图标注店名方法...

热门文章

  1. 计算机科学与技术专业行业人物,计算机科学与技术专业_计算机科学与技术专业求职 - 沪江英语...
  2. python3精要(4)-python数字与表达式1
  3. 【Python】推荐20个好用到爆的Pandas函数方法
  4. 【Python】8000字概括精髓,pandas必知必会50例
  5. 【学术】60%学者反映实验无法复现?Nature给出五招!
  6. 【NLP】用BERT进行机器阅读理解
  7. 【CV】10分钟理解Focal loss数学原理与Pytorch代码
  8. 那些年,使用Github的正确姿势
  9. 信息抽取(四)【NLP论文复现】Multi-head Selection和Deep Biaffine Attention在关系抽取中的实现和效果
  10. 南方日报专访 | 网易云信沈青松: 企业上云正热,PaaS将迎来爆发