githubcomspf13cobra var rootCmd = &cobraCommand Use myapp Short A brief description of your application Long A longer description that spans multiple lines and likely containsexamples and usage
Do Stuff Here 是一个匿名函数,它会在执行命令时被调用。可以在这里编写与命令相关的逻辑代码。
以下是一个示例,假设我们的应用程序需要从命令行参数中读取文件名,并将其内容打印到控制台上:
func main() { var filename string
var rootCmd = &cobra.Command{
Use: "myapp",
Short: "A brief description of your application",
Long: A longer description that spans multiple lines and likely contains examples and usage of using your application.,
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
filename = args[0]
data, err := ioutil.ReadFile(filename)
if err != nil {
log.Fatal(err)
}
fmt.Println(string(data))
},
}
if err := rootCmd.Execute(); err != nil { fmt.Println(err) os.Exit(1) } }
在这个示例中,我们使用了 cobra.ExactArgs(1) 来确保只有一个命令行参数被传递给应用程序。然后我们在 Do Stuff Here 中读取文件名,读取文件内容,并将其打印到控制台上
原文地址: https://www.cveoy.top/t/topic/chxn 著作权归作者所有。请勿转载和采集!