私は自分のrubyアプリで簡単なオプション処理を取得しようとしています。OptionParser
予期しない引数を適切に処理する方法を理解することはできませんが、私が望むことのほとんどを実行しているように見えます。
予期しない引数が提供された場合は、-h
引数が渡されたかのように扱います(使用法を表示して終了します)。しかし、私はそれを処理する方法を見ていません。
OptionParser
それができない場合、コマンドライン引数を簡単に解析するために使用できる別のライブラリはありますか?
私は自分のrubyアプリで簡単なオプション処理を取得しようとしています。OptionParser
予期しない引数を適切に処理する方法を理解することはできませんが、私が望むことのほとんどを実行しているように見えます。
予期しない引数が提供された場合は、-h
引数が渡されたかのように扱います(使用法を表示して終了します)。しかし、私はそれを処理する方法を見ていません。
OptionParser
それができない場合、コマンドライン引数を簡単に解析するために使用できる別のライブラリはありますか?
おそらくそれを行うための巧妙な方法がありますが、私はそれを知りません。私はこれをしました:
opts = OptionParser.new
...
opts.on_tail("-h", "--help",
"Show this message") do
puts opts
exit
end
begin
opts.parse!(argv)
rescue OptionParser::InvalidOption => e
puts e
puts opts
exit(1)
end
以下をtest.rbとして保存した場合
#/usr/bin/env ruby
require 'optparse'
test = nil
help = nil
ARGV.options {|opt|
opt.on("--test=test") {|val| test=val}
help = opt.help
begin
opt.parse!
rescue OptionParser::InvalidOption => e
puts help
end
}
ターミナルで以下を実行し、
$./test.rb --foo
あなたは下に行きます。
Usage: test [options]
--test=test