Ruby/OptionParser
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
&tag(Ruby/OptionParser);
*目次 [#ka21f7d1]
#contents
*関連ページ [#a648f896]
*参考情報 [#c385c37c]
-[[library optparse:http://docs.ruby-lang.org/ja/2.1.0/li...
*概要 [#wbf70088]
-コマンドラインオプションを解析するライブラリ。
*基本的使用方法 [#p899961b]
-以下のように使用する
#pre{{
require 'optparse'
opt = OptionParser.new
opt.banner = "Usage: #{opt.program_name} [-h|--help] <arg...
opt.separator("#{opt.program_name} Available Options")
opt.version = '2.3.4'
opt.on_head('-h', '--help', 'Show this message') do |v|
puts opt.help
exit
end
opts = {}
opt.on('-a VAL') {|v| opts[:a] = v }
opt.on('-b') {|v| opts[:b] = v }
commands = ['backup', 'sync', 'list', 'expire', 'verify',...
opt.on('-c COMMAND', '--command=COMMAND', commands, comma...
opt.on('-t VAL', '--type=VAL', ['foo', 'bar' 'baz']) {|v|...
opt.parse!(ARGV)
p opts
}}
-以下が出力される。
#pre{{
$ ruby option.rb -a foo -b
{:a=>"foo", :b=>true}
}}
-ヘルプを表示する場合。
#pre{{
ruby option.rb --help
Usage: option [-h|--help] <args>
-h, --help Show this message
option Available Options
-a VAL
-b
-c, --check-type=VAL
}}
-on_head / on_tailはopt.helpで表示されるヘルプ文字列の並...
-h / -vはデフォルトでハンドリングされるが、-vのほうは適切...
*その他使用方法 [#o497f465]
**ショートオプションのみを指定 [#r2b57d56]
-以下のように指定
#pre{{
opt.on('-a VAL') {|v| opts[:a] = v }
opt.on('-b') {|v| opts[:b] = v }
opt.on('-t', 'test option}{|v| opts[:t] = v}
}}
-ショートオプションは最初の1文字のみが採用される。例えば"...
#pre{{
opt.on('-to', 'test option') {|v| opts[:to] = v}
}}
*ロングオプションのみを指定 [#l3d343f6]
-以下のように指定
#pre{{
opt.on('--test-option', 'test option') {|v| opts[:test_op...
}}
*Tips [#f5db24a4]
**必要な引数が存在しない場合ヘルプを表示して終了する [#q4...
-デフォルトで-h / -vオプションがサポートされている。必要...
#pre{{
opts = {}
opt = OptionParser.new
opt.on('-f VAL', '--file=VAL') {|v| opts[:file] = v }
opt.parse!(ARGV)
if opts[:file].nil? || !FileTest.file?(opts[:file])
puts opt # putsでヘルプが表示sあれる
exit
end
}}
終了行:
&tag(Ruby/OptionParser);
*目次 [#ka21f7d1]
#contents
*関連ページ [#a648f896]
*参考情報 [#c385c37c]
-[[library optparse:http://docs.ruby-lang.org/ja/2.1.0/li...
*概要 [#wbf70088]
-コマンドラインオプションを解析するライブラリ。
*基本的使用方法 [#p899961b]
-以下のように使用する
#pre{{
require 'optparse'
opt = OptionParser.new
opt.banner = "Usage: #{opt.program_name} [-h|--help] <arg...
opt.separator("#{opt.program_name} Available Options")
opt.version = '2.3.4'
opt.on_head('-h', '--help', 'Show this message') do |v|
puts opt.help
exit
end
opts = {}
opt.on('-a VAL') {|v| opts[:a] = v }
opt.on('-b') {|v| opts[:b] = v }
commands = ['backup', 'sync', 'list', 'expire', 'verify',...
opt.on('-c COMMAND', '--command=COMMAND', commands, comma...
opt.on('-t VAL', '--type=VAL', ['foo', 'bar' 'baz']) {|v|...
opt.parse!(ARGV)
p opts
}}
-以下が出力される。
#pre{{
$ ruby option.rb -a foo -b
{:a=>"foo", :b=>true}
}}
-ヘルプを表示する場合。
#pre{{
ruby option.rb --help
Usage: option [-h|--help] <args>
-h, --help Show this message
option Available Options
-a VAL
-b
-c, --check-type=VAL
}}
-on_head / on_tailはopt.helpで表示されるヘルプ文字列の並...
-h / -vはデフォルトでハンドリングされるが、-vのほうは適切...
*その他使用方法 [#o497f465]
**ショートオプションのみを指定 [#r2b57d56]
-以下のように指定
#pre{{
opt.on('-a VAL') {|v| opts[:a] = v }
opt.on('-b') {|v| opts[:b] = v }
opt.on('-t', 'test option}{|v| opts[:t] = v}
}}
-ショートオプションは最初の1文字のみが採用される。例えば"...
#pre{{
opt.on('-to', 'test option') {|v| opts[:to] = v}
}}
*ロングオプションのみを指定 [#l3d343f6]
-以下のように指定
#pre{{
opt.on('--test-option', 'test option') {|v| opts[:test_op...
}}
*Tips [#f5db24a4]
**必要な引数が存在しない場合ヘルプを表示して終了する [#q4...
-デフォルトで-h / -vオプションがサポートされている。必要...
#pre{{
opts = {}
opt = OptionParser.new
opt.on('-f VAL', '--file=VAL') {|v| opts[:file] = v }
opt.parse!(ARGV)
if opts[:file].nil? || !FileTest.file?(opts[:file])
puts opt # putsでヘルプが表示sあれる
exit
end
}}
ページ名: