Введение

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

Настройка среды

Во-первых, убедитесь, что в вашей системе установлен Ruby. Вы можете проверить свою версию Ruby, выполнив в терминале следующую команду:

$ ruby -v

Если у вас не установлен Ruby, следуйте инструкциям по установке на официальном сайте Ruby (https://www.ruby-lang.org/en/documentation/installation/).

Создание базового приложения CLI

Для начала создайте новый файл с именем my_cli_app.rb и откройте его в своем любимом текстовом редакторе. Добавьте следующий код:

#!/usr/bin/env ruby

def main
  puts 'Hello, CLI!'
end

main if __FILE__ == $PROGRAM_NAME

Это простое приложение CLI печатает «Hello, CLI!» при исполнении. Строка #!/usr/bin/env ruby говорит вашей системе использовать интерпретатор Ruby для запуска скрипта. Строка main if __FILE__ == $PROGRAM_NAME гарантирует, что метод main вызывается только при непосредственном выполнении скрипта, что позволяет при необходимости использовать скрипт как библиотеку.

Сохраните файл и сделайте его исполняемым, запустив:

$ chmod +x my_cli_app.rb

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

$ ./my_cli_app.rb
Hello, CLI!

Добавление аргументов командной строки

Чтобы сделать ваше приложение CLI более полезным, вы можете принимать аргументы командной строки, используя массив ARGV. Обновите файл my_cli_app.rb следующим кодом:

#!/usr/bin/env ruby

def main
  if ARGV.empty?
    puts 'Usage: ./my_cli_app.rb <your_name>'
    exit
  end

  name = ARGV[0]
  puts "Hello, #{name}!"
end

main if __FILE__ == $PROGRAM_NAME

Теперь ваше приложение будет принимать имя в качестве аргумента:

$ ./my_cli_app.rb Alice
Hello, Alice!

Использование драгоценных камней для улучшения вашего приложения CLI

Драгоценные камни Ruby могут значительно улучшить ваше приложение CLI. Например, гем thor (https://github.com/erikhuda/thor) предоставляет мощную основу для создания приложений командной строки с подкомандами, параметрами и аргументами.

Сначала установите гем thor:

$ gem install thor

Затем создайте новый файл с именем my_thor_cli_app.rb и добавьте следующий код:

#!/usr/bin/env ruby

require 'thor'

class MyCLIApp < Thor
  desc 'hello NAME', 'Greets the user with the provided NAME'
  def hello(name)
    puts "Hello, #{name}!"
  end
end

MyCLIApp.start(ARGV)

Этот пример демонстрирует простое приложение thor с одной командой hello. Запустите приложение с помощью:

$ ./my_thor_cli_app.rb hello Alice
Hello, Alice!

Заключение

В этом сообщении блога мы рассмотрели основы создания приложений CLI с помощью Ruby. Мы увидели, как создать простой сценарий, принять аргументы командной строки и использовать гем thor для добавления более продвинутых функций. Обладая этими знаниями, вы можете приступить к созданию мощных приложений CLI, адаптированных к вашим конкретным потребностям. Удачи и удачного кодирования!

  1. Официальный сайт Ruby
  2. RubyGems
  3. Руби-док

Понравилось читать? Еще не являетесь участником Medium? Вы можете поддержать мою работу напрямую, зарегистрировавшись по моей реферальной ссылке здесь. Это быстро, просто и не требует дополнительных затрат. Спасибо за вашу поддержку!