Ruby optparseについて
optparseとは
Rubyではオプション解析を良い感じにやってくれるライブラリが用意されており、それがoptparseです。
OptionParserオブジェクトを作成し、そのオブジェクトに対して、コマンドラインオプションを追加することができる
- parse()メソッド: コマンドライン引数を解析するためのメソッドである。引数として、コマンドライン引数のリストを渡すことができる。
- on()メソッド: コマンドラインオプションを追加するためのメソッドである。引数として、オプションの名前、エイリアス、説明、ブロックを渡すことができる。
- accept()メソッド: 引数の型を定義するためのメソッドである。引数として、型とその型に対応するブロックを渡すことができる。
- OptionParser::Completionクラス: コマンドラインオプションの補完を行うためのクラスである。OptionParserオブジェクトに対して、Completionオブジェクトを追加することができる。
Class: OptionParser (Ruby 2.5.1)
class OptionParser - Documentation for Ruby 2.1.0
GitHub - ruby/optparse: OptionParser is a class for command-line option analysis.
HOWTO parse command line options with Ruby OptionParser · ReadySteadyCode
https://apidock.com/ruby/OptionParser
基本的な使い方
require 'optparse'
# 1. OptionParserオブジェクトを作成する。
opt_parser = OptionParser.new do |opts|
opts.banner = "Usage: example.rb [options]"
# 2. OptionParserオブジェクトに対して、コマンドラインオプションを追加する。
opts.on("-f", "--file FILE", "File name") do |file|
puts "File name: #{file}"
end
opts.on("-n", "--number NUMBER", Integer, "Number") do |number|
puts "Number: #{number}"
end
opts.on("-s", "--string STRING", "String") do |string|
puts "String: #{string}"
end
end
# 3. parse()メソッドを呼び出して、コマンドライン引数を解析する。
opt_parser.parse!