Cobra介绍
Cobra是一个库,其提供简单的接口来创建强大现代的CLI接口,类似于git或者go工具。同时,它也是一个应用,用来生成应用框架,从而开发以Cobra为基础的应用。Docker和Kubernetes源码中使用了Cobra。
概念
Cobra有三个基本概念commands,arguments和flags。其中commands代表行为,arguments代表数值,flags代表对行为的改变。
基本模型如下:
1 | APPNAME COMMAND ARG --FLAG |
安装cobra
1 | go get -u github.com/spf13/cobra/cobra |
安装cobra可执行命令
在文件夹github.com/spf13/cobra/cobra下使用go install在$GOPATH/bin路径下生成cobra.exe可执行命令。
使用Cobra
1 | cobra init demo |
添加命令
1 | cobra add version |
修改默认usage模板
1 | rootCmd.setUsageTemplate(s string) |