1.安装cobra
go get -u github.com/spf13/cobra 
2.使用方法
例如实现一个xlsx大文件拆分工具
root.go
package cmd
import "github.com/spf13/cobra"
// 命令行的根命令注册句柄
var rootcmd = &cobra.Command{
    Use: "split_xlsx",
    Short: "文件拆分工具"
    TraverseChildren: "true",
    Long: "拆分工具"
}
// 根据需要创建命令的入口方法注册处理中心
func init() {
    rootCmd.AddCommand(NewSplitCmd())  // 内部方法为一个返回值*cobra.Command的方法
    // ... 具体可根据自己需要添加所需要的命令
}
// 所有的命令服务执行入口
func Execute() error {
    return rootCmd.Execute()
} 
main.go
package main
import (
    "os"
    "github.com/split_xlsx/cmd"
)
func main(){
    if err := cmd.Execute();err != nil {
        os.Exit(2)
    }
} 
split_xlsx.go
// NewSplitCmd方法
func NewSplitCmd() *cobra.Command {
    var action int
    authorCmd := &cobra.Command {
        Use: "使用说明命令行",
        Short: "工具名称",
        RunE: func(cmd *cobra.Command,args []string) error {
            // 具体命令处理方法。。。
        }
        return nil
    },
    // 命令参数指定
    authorCmd.Flags().IntVarP(&action,"action","a",0,"1:拆分文件")
    
    return authorCmd
}









