package cmd import ( "os" "github.com/spf13/cobra" ) var ( cfgPath string // rootCmd represents the base command when called without any subcommands rootCmd = &cobra.Command{ Use: "ProxySwitcher", Short: "A simple internet proxy switching tool", // Uncomment the following line if your bare application // has an action associated with it: // Run: func(cmd *cobra.Command, args []string) { }, } ) // Execute adds all child commands to the root command and sets flags appropriately. // This is called by main.main(). It only needs to happen once to the rootCmd. func Execute() { err := rootCmd.Execute() if err != nil { os.Exit(1) } } func init() { // Here you will define your flags and configuration settings. // Cobra supports persistent flags, which, if defined here, // will be global for your application. rootCmd.PersistentFlags().StringVarP(&cfgPath, "configs", "c", "configs/", "configurations path") // Cobra also supports local flags, which will only run // when this action is called directly. // rootCmd.Flags().BoolP("toggle", "t", false, "Help message for toggle") }