Как использовать Кобра на Голанге

Cobra — это мощная библиотека и инструмент в Golang, который используется для создания приложений CLI (интерфейса командной строки). Cobra делает это, предоставляя инструменты, которые автоматизируют процесс и предоставляют ключевые абстракции, повышающие производительность труда разработчиков.

Почему использовать Cobra?

Среди множества преимуществ использования Cobra следует учитывать следующие:

  • Легко создавать интерфейсы командной строки на основе подкоманд и использовать вложенные подкоманды.
  • Автоматическое создание справки для команд и флагов.
  • Повышенная производительность благодаря таким командам, как cobra init appname & cobra add cmdname .
  • Полезные, интеллектуальные предложения ( app srver … вы имели в виду сервер приложений ?).

Установка

Чтобы использовать Cobra, вам нужно использовать go get , чтобы установить последнюю версию версия библиотеки. Эта команда установит исполняемый файл генератора cobra вместе с библиотекой и ее зависимостями:

  go get github.com/spf13/cobra/cobra   

Затем включите Cobra в свое приложение:

  import "github.com/spf13/cobra"  

Использование cobra

Инициализируйте приложение Cobra CLI с помощью cobra init --pkg-name команда. Эта команда создаст для вас базовую структуру приложения.

Вы можете добавлять команды в свое приложение с помощью синтаксиса cobra add .

Cobra предостерегает от использования snake_case/snake-case, потому что это может привести к ошибкам. Вместо этого используйте camelCase .

Ваш каталог будет выглядеть так:

Реализация

Давайте рассмотрим простой вариант использования Cobra. В приведенном ниже коде мы создадим простое приложение CLI для внесения дополнений.

Для этой реализации у нас будет три файла:

Файл Каталог
1. main.go приложение/демонстрация
2. root.go app/demo/cmd
3. add.go app/demo/cmd

Для инициализации вашего Приложение CLI, напишите в своем терминале следующую команду:

  cobra init --pkg-name demo  

Это создаст ваш файлы main.go и root.go. Ваш главный. go — наша точка входа в наше приложение Cobra, и обычно это просто:

  package mainimport ("{pathToYourApp}/cmd") func main () {cmd.Execute ()}   

Значительный бит в файле root.go находится ниже (оставшуюся часть кода пока можно проигнорировать):

  var rootCmd = & cobra.Command {Используйте: «demo», Short: «демонстрационное приложение для демонстрации кобры», Long: `демонстрационное приложение для демонстрации кобры путем добавления`} func Execute () {if err: = rootCmd.Execute ()  ;  err! = nil {fmt.Println (err) os.Exit (1)}}  

Теперь добавьте команду ‘добавить’, написав:

  cobra add add  

Это создаст файл для нашей команды «добавить». Код для файла:

  package cmdimport ("fmt" "strconv" "github.com/spf13/cobra")//addCmd представляет команду добавления var addCmd = & cobra  .Command {Используйте: "add", Short: "Добавить значения, переданные в функцию", Long: `Демонстрационное приложение для демонстрации возможностей кобры`, Run: func (cmd * cobra.Command, args [] string) {sum: = 0for  _, args: = range args {num, err: = strconv.Atoi (args) if err! = nil {fmt.Println (err)} sum = sum + num} fmt.Println ("результат сложения", сумма  )},} func init () {rootCmd.AddCommand (add)}  

Вы можете выполнить программу, запустив:

  перейти к установке  

, а затем:

  demo add 1 2 3  

для которого вывод будет:

 результат сложения - 6 

Посетите страницу github для получения дополнительной информации.

Оцените статью
nanomode.ru
Добавить комментарий