Я использую OptionParser
с Ruby.
I другие языки, такие как C, Python и т.д., есть аналогичные синтаксические анализаторы параметров командной строки, и они часто предоставляют способ отображения справочного сообщения, когда параметры не заданы или параметры не соответствуют.
options = {}
OptionParser.new do |opts|
opts.banner = "Usage: calc.rb [options]"
opts.on("-l", "--length L", Integer, "Length") { |l| options[:length] = l }
opts.on("-w", "--width W", Integer, "Width") { |w| options[:width] = w }
opts.on_tail("-h", "--help", "Show this message") do
puts opts
exit
end
end.parse!
Вопросы
- Есть ли способ установить, что по умолчанию отображается сообщение
help
, если параметры не были переданы (ruby calc.rb
)? - Как насчет того, если требуемый параметр не указан или недействителен? Предположим, что
length
- параметр REQUIRED, и пользователь не передает его или передает что-то не так, как-l FOO
?