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

长沙需要做网站的企业精品外贸网站 dedecms

长沙需要做网站的企业,精品外贸网站 dedecms,人才市场官方网站,萨隆wordpresscobra 是什么 cobra 的主要功能是创建强大的现代 cli 应用程序。目前市面上许多的著名的 Go 语言开源项目都是使用 Cobra 来构建的#xff0c;例如#xff1a;K8s、Hugo、etcd、Docker 等#xff0c;是非常可靠的一个开源项目。 没有 cobra 之前用什么 如果不用 cobra例如K8s、Hugo、etcd、Docker 等是非常可靠的一个开源项目。 没有 cobra 之前用什么 如果不用 cobra我们也可以使用 go 自带的 flag 标准库 flag 的基本用法 下面代码中我们调用标准库 flag 的 StringVar 方法实现了对命令行参数 name 的解析和绑定其各个形参的含义分别为命令行标识位的名称、默认值、帮助信息。 命令行参数支持如下三种命令行标志语法 -flag 仅支持布尔类型-flag x 仅支持非布尔类型-flagx 均支持 package mainimport (flagfmt )func main() {var name string// 名称为 name、默认值为 Go go go!flag.StringVar(name, name, Go go go!, 帮助信息)flag.StringVar(name, n, Go go go!, 帮助信息)flag.Parse()fmt.Printf(name: %s\n, name) }执行 // 均输出 abc go run main.go -nameabc go run main.go -nabc子命令实现 在我们日常使用的 CLI 应用中另一个最常见的功能就是子命令的使用一个工具它可能包含大量相关联的功能命令以此形成工具集可以说是刚需那么这个功能在标准库 flag 中可以如何实现呢如下述示例 package mainimport (flaglog )var name stringfunc main() {flag.Parse()args : flag.Args()if len(args) 0 {return}switch args[0] {case go:goCmd : flag.NewFlagSet(go, flag.ExitOnError)goCmd.StringVar(name, name, Go 语言, 帮助信息)_ goCmd.Parse(args[1:])case php:phpCmd : flag.NewFlagSet(php, flag.ExitOnError)phpCmd.StringVar(name, n, PHP 语言, 帮助信息)_ phpCmd.Parse(args[1:])}log.Printf(name: %s, name) }在上述代码中我们首先调用了 flag.Parse 方法将命令行解析为定义的标志便于我们后续的参数使用。 另外由于我们需要处理子命令的情况因此我们调用了 flag.NewFlagSet 方法该方法会返回带有指定名称和错误处理属性的空命令集给我们去使用相当于就是创建了一个新的命令集去支持子命令了。 这里需要特别注意的是 flag.NewFlagSet 方法的第二个参数是 ErrorHandling用于指定处理异常错误其内置提供以下三种模式 const (// 返回错误描述ContinueOnError ErrorHandling iota// 调用 os.Exit(2) 退出程序ExitOnError// 调用 panic 语句抛出错误异常PanicOnError )➜ go run main.go go 2022/08/04 08:59:21 name: Go 语言 ➜ go run main.go php 2022/08/04 09:00:54 name: PHP 语言 ➜ go run main.go php -n abc 2022/08/04 09:01:05 name: abc使用 cobra 安装 go get -u github.com/spf13/cobra示例 package mainimport (fmtgithub.com/spf13/cobralog )func main() {var wordCmd cobra.Command{Use: test, // 子命令的命令标识Short: 测试, // 简短说明Long: 测试 cobra 子命令, // 完整说明Run: func(cmd *cobra.Command, args []string) {fmt.Println(args)},}var rootCmd cobra.Command{}rootCmd.AddCommand(wordCmd)err : rootCmd.Execute()if err ! nil {log.Fatalf(cmd.Execute err: %v, err)} }在上面的例子中我们添加了一个 test 子命令使用 ➜ go run main.go test abc [abc]这里把 wordCmd 和 rootCmd 都写在一块不是一个好的实践如果命令多的情况下这个文件会非常大。
http://www.tj-hxxt.cn/news/133439.html

相关文章:

  • 淄博企业网站66郑州网站建设
  • 番禺做网站开发江西省赣州市天气预报
  • 网站图片上传不上去是什么情况中小学校园网站建设
  • wordpress屏蔽登陆按钮长沙专业网站优化定制
  • 知名开发网站公司简介wordpress 下一篇
  • 怎样做阿里巴巴网站的店招网站访问工具
  • eclipse tomcat 网站开发网站开发学生鉴定表
  • 西宁市城乡规划建设局网站公司注册要求
  • wordpress做分类信息网站考试源码网站wordpress
  • 海洋公园网站建设方案有人用wordpress做企业
  • 网站建设方案书ppt泸州网站公司
  • 中文网页模板大全青岛网站seo分析
  • 广州企业网站制作公司品牌网站建设有哪些方面
  • 为什么做的网站预览出来什么都没有网站建设办公软件销售技巧
  • odoo 12 网站开发怎么做网页html
  • 有哪些可以做调查的网站濮阳做网站推广的公司
  • 徐州建站互联网营销模式
  • 潍坊网站建设SEO优化做流量任务的试用网站
  • 采购网站大全app设计欣赏网站
  • 如何百度搜索到自己的网站网站被黑了
  • 全国新农村建设中心网站怎样做同城配送网站
  • 网站备案完成后品牌设计logo
  • 平面设计专用网站网站建设 选择题
  • 可以做砍价活动的网站如何用源代码提取网页的图片
  • 网站图片展示代码最新新闻事件摘抄
  • 空间网站wordpress底部漂浮
  • 大连开发区做网站投广告的平台有哪些
  • 电子商务网站建设训练总结seo搜索优化服务
  • 信息科技公司网站怎么做做网站开发公司
  • 河南省住房与城乡建设部网站电子商务企业网站的推广方式