Cobra安装和简单应用

栏目: Go · 发布时间: 6年前

内容简介:原文地址:关键点在于先将golang的sys和text复制到本地来,再使用指令进行安装指令步骤为:

原文地址: http://www.pianshen.com/article/596183159/

cobra安装

关键点在于先将golang的sys和text复制到本地来,再使用指令进行安装

指令步骤为:

使用命令 go get -v github.com/spf13/cobra/cobra 下载过程中,会出提示如下错误

Fetching https://golang.org/x/sys/unix?go-get=1 https fetch failed:

Get https://golang.org/x/sys/unix?go-get=1: dial tcp 216.239.37.1:443:

i/o timeout

这是熟悉的错误,请先cd到 $GOPATH/src/golang.org/x 目录下用 git clone 下载 sys 和 text 项目

具体指令为:

git clone https://github.com/golang/text

git clone https://github.com/golang/sys

然后使用 go install github.com/spf13/cobra/cobra , 安装后在 $GOBIN 下出现了 cobra 可执行程序。

cobra使用

参考资料: https://www.cnblogs.com/welhzh/p/8962489.html

使用cobra创建一个新的demo:

由于cobra只能够在gopath的目录下使用,因此我们需要先cd到gopath的src文件夹中

在src目录下,我们可以使用 cobra init demo 这一条指令来新建一个demo

然后我们使用 ls 指令就可以看到目录下生成了一个demo项目,进入到里面试着运行一下,应该是可以成功运行的

具体步骤如下图:

Cobra安装和简单应用

在这里插入图片描述

按照潘老师博客中的操作进行简单的cobra使用

https://pmlpml.github.io/ServiceComputingOnCloud/ex-cli-agenda#42-第一周任务

其中有一个地方感觉需要注意一下:cobra init 要应用在一个新建的空文件夹中,会自动在文件夹下建立一个生成好的框架

也就是说:

- mkdir temp
 - cd temp
 - cobra init

或者

- cobra init temp

这两段命令的效果是一样的

然后我们cd进新生成的文件目录下,使用指令 cobra add register ,就会新添加一个名为register的操作,此时操作没有任何效果,使用 go run xxx.go register 只会提示你调用了这个操作

Cobra安装和简单应用

在这里插入图片描述

具体调用过程我们可以阅读【main.go】和【root.go】、【register.go】三个文件得知

然后我们可以通过修改【register.go】来添加相应的操作

具体操作为:

register.go,中的init() 添加:

registerCmd.Flags().StringP("user", "u", "Anonymous", "Help message for username")

Run 匿名回调函数中添加:

username, _ := cmd.Flags().GetString("user")

fmt.Println("register called by " + username)

修改后的【register.go】文件如下:

Cobra安装和简单应用

在这里插入图片描述

修改后wq退出,然后就可以进行测试:

命令为: go run main.go register --user=Apple

可看到修改命令生效了

Cobra安装和简单应用

在这里插入图片描述


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Mobilizing Web Sites

Mobilizing Web Sites

Layon, Kristofer / 2011-12 / 266.00元

Everyone has been talking about the mobile web in recent years, and more of us are browsing the web on smartphones and similar devices than ever before. But most of what we are viewing has not yet bee......一起来看看 《Mobilizing Web Sites》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具