coba包使用详解

1. 概述
cobra是用于创建应用程序命令行的库,大名鼎鼎的k8s,docker,hugo等均采用cobra来构建自己的命令行。cobra提供了简单的接口,用于创建功能强大的现代CLI界面,类似于git和go。使用cobra可以快速的生成命令框架
2. 概念
  1. cobra用于生成包含commands、arguments、flags的CLI
  2. commands代表动作,如create、update、path(kubectl),arguments 就是命令行参数(或者称为位置参数), Flags代表动作的修饰, 如–network=host(docker run)
  3. 模式:APPNAME VERB NOUN --ADJECTIVE或者APPNAME COMMAND ARG --FLAG
3. Commands
commands是应用程序的核心概念,应用程序支持的每个功能点都应该支持命令。命令可以有子命令,继续选择运行的操作
4. Flags
Flags是修改Commands的行为的标志。Cobra支持POSIX-compliant和go的flag包。
5. 安装
go get -u github.com/spf13/cobra
6. 使用Cobra Generator
  1. go get github.com/spf13/cobra/cobra
  2. 初始化
mkdir -p cobraDemo && cd cobraDemo &&cobra init --pkg-name github.com/spf13/cobraDemo

or

cobra init --pkg-name github.com/spf13/newApp path/to/newApp
  1. cobra add
cobra add serve
cobra add config
cobra add create -p 'configCmd' //添加子命令
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐