5月112012
0
args_parserというgemを作りました。
2年前に作ったArgsParserをバージョンアップしていたら互換性が無くなってきたので名前を変えた。
optparseよりもすっきり書けると思う。
■インストール
gem install args_parser
■使い方
試しに、「webページのURLを指定してダウンロードする」アプリを作ってみる。
こういう風に使えるのを作る。
ruby download_webpage.rb -url http://example.com -o out.html
download_webpage.rb
#!/usr/bin/env ruby
require 'rubygems'
require 'args_parser'
parser = ArgsParser.parse ARGV do
arg :url, 'URL', :alias => :u
arg :output, 'output file', :alias => :o, :default => 'out.html'
arg :verbose, 'verbose mode'
arg :help, 'show help', :alias => :h
end
if parser.has_option? :help or !parser.has_param?(:url, :output)
STDERR.puts parser.help
STDERR.puts "e.g. ruby #{$0} -url http://example.com -o out.html"
exit 1
end
require 'open-uri'
puts 'download..' if parser[:verbose]
data = open(parser[:url]).read
puts data if parser[:verbose]
open(parser[:output], 'w+') do |f|
f.write data
end
puts "saved! => #{parser[:output]}"
こんな感じで実行できる。