百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
G

go-flags

> 编程语言
开源

go 命令行选项解析器

2.7K stars0 点赞1 次浏览
访问官网GitHub

工具介绍

go 命令行选项解析器

go-flags:一个用于解析命令行参数的 Go 库

该库提供了与 Go 内置 flag 库类似的功能,但功能更丰富,格式也更美观。根据文档:

flags 包提供了一个功能强大的命令行选项解析器。 flags 包在功能上与 Go 内置的 flag 包类似,但提供了更多选项,并利用反射提供了一种便捷且简洁的方式来指定命令行选项。

支持的功能:

  • 带短名称的选项(-v)
  • 带长名称的选项(--verbose)
  • 带参数和不带参数的选项(布尔值 vs. 其他类型)
  • 带可选参数和默认值的选项
  • 多个选项组,每组包含一组选项
  • 生成并打印格式良好的帮助信息
  • 在 -- 之后传递剩余的命令行参数(可选)
  • 忽略未知的命令行选项(可选)
  • 支持 -I/usr/include、-I=/usr/include、-I /usr/include 选项参数指定方式
  • 支持多个短选项组合,如 -aux
  • 支持所有 Go 基本类型(string、int{8..64}、uint{8..64}、float)
  • 支持同一选项多次出现(可存储为切片或仅保留最后一次的值)
  • 支持映射(map)
  • 支持函数回调
  • 支持(嵌套)选项组的命名空间

flags 包使用结构体、反射和结构体字段标签,让用户能够指定命令行选项。这使得应用程序选项的指定变得非常简单和简洁。例如:

go
type Options struct {
	Verbose []bool `short:"v" long:"verbose" description:"Show verbose debug information"`
}

这指定了一个选项,短名称为 -v,长名称为 --verbose。当命令行中出现 -v 或 --verbose 时,一个 'true' 值将被追加到 Verbose 字段。例如,当指定 -vvv 时,Verbose 的结果值将是 {[true, true, true]}。

示例:

…

更多信息可以在 godocs 中找到:http://godoc.org/github.com/jessevdk/go-flags>

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Go

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言