ZBLOG

golang 命令行解析

Golang 提供了内置的 flag 包来进行命令行解析。flag 包可以解析命令行参数,并将其转换为对应的变量值。

以下是一个简单的示例:

package main

import (
    "flag"
    "fmt"
)

func main() {
    var name string
    var age int
    var married bool

    flag.StringVar(&name, "name", "", "姓名,默认为空")
    flag.IntVar(&age, "age", 0, "年龄,默认为 0")
    flag.BoolVar(&married, "married", false, "婚姻状况,默认为 false")

    flag.Parse()

    fmt.Printf("姓名:%s\n", name)
    fmt.Printf("年龄:%d\n", age)
    fmt.Printf("婚姻状况:%t\n", married)
}

在上面的示例中,首先定义了三个变量 nameagemarried。然后使用 flag.StringVar()flag.IntVar()flag.BoolVar() 函数将这三个变量与命令行参数绑定起来。其中第一个参数表示绑定的变量地址,第二个参数表示命令行参数的名称,第三个参数表示命令行参数的默认值,第四个参数表示命令行参数的说明文本。

最后使用 flag.Parse() 解析命令行参数,然后输出相应的结果。运行程序时可以通过命令行参数来修改这三个变量的值,例如:

./example -name=Alice -age=20 -married=true

输出结果为:

姓名:Alice
年龄:20
婚姻状况:true

除了以上示例中介绍的函数外,flag 包还提供了一些其他的函数,例如 flag.ParseInt()flag.ParseBool() 等。更多详细信息可以查看官方文档。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=2350

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?