机器环境
- go版本:go version go1.18.3 darwin/amd64
安装mac的补全命令
-
brew install bash-completion
- 命令安装成功之后会有一个提示,根据提示将标红的这行加入到~/.bash_profile文件中,并执行source ~/.bash_profile
通过cobra生成自定义的命令
- 安装cobra-init命令
#新版本的corba命令行是一个单独的命令cobra-init,直接用cobra作为命令行是install不成功的 go install github.com/spf13/cobra-init
- 自动生成自定义命令
#创建命令文件件 mkdir autocomplete mkdir autocomplete/cmd #生成命令的main.go文件,并用go mod 初始化项目 cobra-cli init #在cmd文件夹下生成子命令 cobra-cli add command1 cobra-cli add command2
-
修改command1、command2的代码实现自己的业务逻辑
-
生成自动补全配置放到bash-completion的配置文件夹
#1、生成可执行文件 go build #小提示:go build 后面不加main.go的时候按照文件夹名称生成可执行文件名 #2、生成自动补全配置文件,并拷贝到配置目录 #新版本的cobra自带completion命令,这个命令就是专门来生成自动补全配置文件的,不用自己写了 #我看了其他一些文章都要自己生成completion命令 #由于不同系统自动补全的配置文件目录不一定一样,linux下是/etc/bash_completion.d ./autocomplete completion bash > /usr/local/etc/bash_completion.d/autocomplete
- 感受劳动成果