当前位置: 首页 > news >正文

成都网站建设零一海阳做网站

成都网站建设零一,海阳做网站,微信开发者工具官方文档,百度网站下拉怎么做Cobra 是 golang 最流行的命令行库#xff0c;文档见 一、脚手架 mkdir pt cd pt go mod init cobra-cli init # 在项目下运行即可生成脚手架# tree . ├── LICENSE ├── cmd # 生成了cmd目录 │ └── root.go # 生成了root.go, 其中定义了ro… Cobra 是 golang 最流行的命令行库文档见 一、脚手架 mkdir pt cd pt go mod init cobra-cli init # 在项目下运行即可生成脚手架# tree . ├── LICENSE ├── cmd # 生成了cmd目录 │ └── root.go # 生成了root.go, 其中定义了rootCmt变量 ├── go.mod ├── go.sum └── main.go# go run main.go Usage:pt [command]Available Commands:completion Generate the autocompletion script for the specified shellhelp Help about any commandshow Display current timeFlags:-h, --help help for pt-t, --toggle Help message for toggle二、子命令 # cobra-cli add show # 添加名为show的子命令, 则会自动生成cmd/show.go代码# go run main.go show # 执行名为show的子命令 2023-08-28 22:00:58.263991 0800 CST m0.000923251# go run main.go show -h # 获取名为show的子命令的帮助信息 will display like 2023-08-28 22:00:58.263991 0800 CST m0.000923251Usage:pt show [flags]Flags:-h, --help help for show三、flag 参数 3.1 定义 // 添加参数 func init() {rootCmd.AddCommand(proto2jsonCmd)proto2jsonCmd.Flags().StringP(content, c, , byte content of a.proto)proto2jsonCmd.Flags().StringP(filepath, f, , filepath of proto file) }// 输出如下: with a.proto protocolUsage:pt p2j [flags]Flags:-c, --content string byte content of a.proto-f, --filepath string filepath of proto file-h, --help help for p2j3.2 使用 如果需要使用 全局flag 或者 局部flag需要在合适的作用域内定义变量存储 flag 值以便 flag 可在特定作用域内生效。 3.2.1 使用全局flag 让一个 flag 对所有命令生效需要在 root.go 文件中创建一个变量存储 flag 值。 如需要定义一个全局flag name // 在root.go 文件中添加一个变量name var name string// 在init函数中添加全局flag将flag值存储到变量name中 rootCmd.PersistentFlags().StringVar(name, name, , set name)// 在子命令version的Run方法中输出name Run: func(cmd *cobra.Command, args []string) { fmt.Println(name is: , name) }// 执行命令 ./demo version --name a 输出 name is: a3.2 使用局部 flag 让一个 flag 对某个命令生效需要在该命令文件中创建一个变量存储 flag 值。 如需要给version命令定义一个局部flag name // 定义变量content var content string// 在version.go的init函数中添加flag versionCmd.Flags().StringVarP(content, content, s, false, you are my sunshine)// 在子命令version.go的Run方法中输出 Run: func(cmd *cobra.Command, args []string) { fmt.Println(name is: , name)fmt.Println(content is: , content) }// 执行命令 ./demo version --name a --content b 输出 name is: a content is: b 3.3 cmd 只能访问到自己定义的 flag 值 注意将 flags 存储到本地变量当中那么其他命令「不可以」用某个命令的 局部flag。因为局部flag虽然是定义在某个命令文件中作为局部变量cmd 文件夹下的其他文件可以访问这个变量但是其他命令如果没有定义自己的 局部flag 获取相同 flag 值的话获取到的值是该局部变量的零值。示例如下 // 1. 添加一个新命令helloworld cobra add helloworld// 2.输出content值 Run: func(cmd *cobra.Command, args []string) { fmt.Println(content is: , sunshine) }// 3.执行命令 ./demo helloworld --content b Error: unknown flag: --content // 输出错误未知flag, 原因就是该命令并未定义名为content的局部flag3.4 必填 flag // init文件中增加flag定义 versionCmd.Flags().StringVarP(sunshine, content, c, , my content) versionCmd.MarkFlagRequired(content)// 执行 ./demo version// 输出 Error: required flag(s) content not set // 说明必须要设置flag content// 传入content flag ./demo version --content b // 输出 content is: b3.5 全局 flag 配置 MinimumNArgs(int) 当参数数目低于配置的最小参数个数时报错 MaximumNArgs(int) 当参数数目大于配置的最大参数个数时报错 ExactArgs(int) 如果参数数目不是配置的参数个数时报错 NoArgs 没有参数则报错 示例如下 // 添加一个命令path cobra add path// 设置该命令需要且仅需要一个参数并在Run方法中取出参数 var pathCmd cobra.Command{ Use: path [path],Short: A brief description of your command,Long: , Args: cobra.ExactArgs(1),Run: func(cmd *cobra.Command, args []string) {fmt.Println(path called)fmt.Println(path:, args[0])}, }// 执行命令并输出 ./demo path /home // 输出path: /home
http://www.hkea.cn/news/14263002/

相关文章:

  • 河东天津网站建设闵行做网站
  • 介绍类网站建设策划书范文有诗意的设计公司名字
  • 中国建设银行信用卡旅游卡服务网站哈尔滨市哪里做淘宝网站
  • 南京百度网站排名建站工作室
  • 企业做定制网站的好处网站建设和管理专业
  • 做网站的注意点wordpress 群站
  • 网站建设技术合伙人的技术股份企业的网站建设公司
  • 中恒诚信建设有限公司网站wordpress简单网址导航模板
  • 淄博网站设计公司学校网站建设的不足
  • 做网站用什么语言制作最安全做网站属于印花税哪个范畴
  • 做网站时间网站推广的具体方法
  • 静态企业网站下载服务哪家好网站制作
  • 网站模板源码下载网页设计作业总结
  • 深圳 营销型网站建设太原建设工程信息网站
  • 淮安做网站服务单位用什么软件可以做网站
  • 手机网站建设的影响爱爱做网站
  • 58同城会员网站怎么做嘉兴企业自助建站
  • 网站一键备份wordpress做成网盘
  • 宁津建设局网站闵行区
  • 做外贸 网站邮箱申请医院建设官方网站必要性
  • 九江市建设规划局网站外贸流程图详细
  • 网站宣传推广方案asp.net小型网站开发
  • 建设网站包括哪些wordpress 走马灯
  • 招远网站建设招聘北京天仪建设工程质量检测所网站
  • 做网站属于广告费吗wordpress文章meta
  • wordpress sql插件兰州seo实战优化
  • 青海营销网站建设多少钱外贸建站公司排名
  • 网站建设试题以及答案泉州响应式网站建设
  • 辽阳网站建设辽阳网络营销论文范文
  • 网站关键词seo优化公司网站建设有那些软件