Sha256: 0b309ac9802fd9c9011fb963e2771bebb47cd67ce670fcac94077fa5bfa583bc
Contents?: true
Size: 1.17 KB
Versions: 18
Compression:
Stored size: 1.17 KB
Contents
#!/usr/bin/env ruby -wKU $:.unshift(File.expand_path("../../lib", __FILE__)) require 'optparse' require 'ostruct' require 'whois' options = OpenStruct.new OptionParser.new do |opts| opts.banner = "Whois: an intelligent pure Ruby Whois client" opts.define_head "Usage: ruby-whois [options] object" opts.separator "" opts.separator "Examples:" opts.separator " ruby-whois ruby-lang.com" opts.separator " ruby-whois 213.149.247.64" opts.separator "" opts.separator "Options:" opts.on("-t", "--timeout [SECONDS]", Integer, "Specify the timeout value") do |seconds| options.timeout = seconds end opts.on_tail("--help", "Show this message") do puts opts exit end opts.on_tail("-v", "--version", "Show version") do puts "#{Whois::NAME} #{Whois::VERSION}" exit end begin opts.parse! rescue OptionParser::ParseError puts opts exit 1 end if ARGV.size.zero? puts opts exit 1 end end qstring = ARGV.shift begin @client = Whois::Client.new(:timeout => options.timeout) puts @client.query(qstring) rescue Whois::Error => e abort(e.message) rescue Timeout::Error => e abort("Request Timeout") end
Version data entries
18 entries across 18 versions & 1 rubygems