baby sword‘s blog baby sword‘s blog
首页
  • java基础
  • java进阶
大数据
  • mysql

    • mysql索引
    • mysql日志
  • redis

    • 单机下的redis
    • 集群下的redis
  • Spring
  • springboot
  • RPC
  • netty
  • mybatis
  • maven
  • 消息队列
  • kafka
  • zookeeper
  • rocketmq
  • 七大设计原则
  • 创建型模式
  • 结构型模式
  • 行为型模式
  • SpringCloud

    • eureka
  • SpringCloud Alibaba

    • nacos
  • 计算机网络
  • 操作系统
  • 算法
  • 个人项目
  • 个人面试面经
  • 八股记忆
  • 工作积累
  • 逻辑题
  • 面试

    • 百度后端实习二面
GitHub (opens new window)

zhengjian

不敢承担失去的风险,是不可能抓住梦想的
首页
  • java基础
  • java进阶
大数据
  • mysql

    • mysql索引
    • mysql日志
  • redis

    • 单机下的redis
    • 集群下的redis
  • Spring
  • springboot
  • RPC
  • netty
  • mybatis
  • maven
  • 消息队列
  • kafka
  • zookeeper
  • rocketmq
  • 七大设计原则
  • 创建型模式
  • 结构型模式
  • 行为型模式
  • SpringCloud

    • eureka
  • SpringCloud Alibaba

    • nacos
  • 计算机网络
  • 操作系统
  • 算法
  • 个人项目
  • 个人面试面经
  • 八股记忆
  • 工作积累
  • 逻辑题
  • 面试

    • 百度后端实习二面
GitHub (opens new window)
  • 华仔聊技术

  • 业务设计

  • 场景设计

  • 运维

  • 安全

  • 面试

  • mac相关工具推荐

  • 开发工具

  • 人工智能

  • 推荐

  • 阅读

  • 工具

  • 计划

  • 产品

  • 云原生

  • go

    • 基础
    • go项目
    • go channel
    • go list
    • go testing模块
    • go指针
    • go实现LRU
    • go数据结构的内存实现
    • go interfaces
    • go项目分包相关
    • 协程实现原理
    • 垃圾回收与写屏障
    • gin
    • go中flag的使用
      • go dig
      • linux环境快速搭建go
    • QVM

    • 软件设计师

    • 极客时间

    • 单元测试

    • 其他
    • go
    xugaoyi
    2023-08-21
    目录

    go中flag的使用

    # 介绍

    在 Go 编程语言中,标准库提供了 flag 包来处理命令行参数。这个包允许你定义和解析命令行参数,并将它们转换成相应的变量值。

    # 快速使用

    package main
    
    import (
    	"flag"
    	"fmt"
    )
    
    func main() {
    	// 定义命令行参数对应的变量
    	var name string
    	var age int
    
    	// 使用 flag 包定义命令行参数
    	flag.StringVar(&name, "name", "defaultName", "Your name")
    	flag.IntVar(&age, "age", 0, "Your age")
    
    	// 解析命令行参数
    	flag.Parse()
    
    	// 输出解析后的参数值
    	fmt.Println("Name:", name)
    	fmt.Println("Age:", age)
    }
    
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24

    在这个示例中,flag.StringVar 和 flag.IntVar 函数用于定义命令行参数,它们接受参数变量的地址、命令行参数名称、默认值以及参数的描述。flag.Parse() 被用来解析命令行参数。你可以在命令行中使用 -name 和 -age 参数来传递相应的值。

    运行示例程序时,你可以这样传递参数:

    go run main.go -name Alice -age 25
    
    1

    这将输出:

    makefileCopy code
    Name: Alice
    Age: 25
    
    1
    2
    3

    如果你不提供命令行参数,则会使用默认值。

    编辑 (opens new window)
    上次更新: 2024/02/22, 14:03:19
    gin
    go dig

    ← gin go dig→

    最近更新
    01
    spark基础
    02-22
    02
    mysql读写分离和分库分表
    02-22
    03
    数据库迁移
    02-22
    更多文章>
    Theme by Vdoing | Copyright © 2019-2024 Evan Xu | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式