我找不到使用该示例的方法./client echo --times 10 "coucou" ./client --times 10 "coucou" echo没办法使用它...抱歉我的错误。最好的问候,尼古拉斯 func main() { var echoTimes int var cmdEcho = &cobra.Command{ Use: "echo [string to echo]", Short: "Echo anything to the screen", Long: `echo is for echoing anything back. Echo works a lot like print, except it has a child command. `, Run: func(cmd *cobra.Command, args []string) { fmt.Println("Print: " + strings.Join(args, " ")) }, } var cmdTimes = &cobra.Command{ Use: "times [# times] [string to echo]", Short: "Echo anything to the screen more times", Long: `echo things multiple times back to the user by providing a count and a string.`, Run: func(cmd *cobra.Command, args []string) { for i:=0; i < echoTimes; i++ { fmt.Println("Echo: " + strings.Join(args, " ")) } }, } cmdTimes.Flags().IntVarP(&echoTimes, "times", "t", 1, "times to echo the input") var rootCmd = &cobra.Command{Use: "app"} rootCmd.AddCommand(cmdEcho) cmdEcho.AddCommand(cmdTimes) rootCmd.Execute()}
2 回答
守着一只汪
TA贡献1872条经验 获得超3个赞
如果times是命令,则不应以“ --”作为前缀。
您可以在其中看到的示例cobra_test.go展示了以下times用途:
echo times -j 99 one two
echo times -s again -c test here
翻过高山走不出你
TA贡献1875条经验 获得超3个赞
例如,如果您执行的文件名为app,只需运行
$./app echo times -t 3 hello
Echo: hello
Echo: hello
Echo: hello
或者
$./app echo times --times=3 hello
Echo: hello
Echo: hello
Echo: hello
- 2 回答
- 0 关注
- 182 浏览
添加回答
举报
0/150
提交
取消