Hey all,
I must be doing something wrong here. Im calling the following file
this way:
ruby script.rb -s 1234
or
ruby script.rb -s1111
#Code snip
require ‘optparse’
opts = OptionParser.new
opts.on("-s", “–size VAL”, Integer) do |val|
puts “-s #{val}”
puts val
end
But…no matter what I do, I don’t get any values out. I must be doing
something wrong??
Thanks!
Brian
PS: The documentation really isn’t too clear on this…
On Monday 20 March 2006 1:13 pm, [email protected] wrote:
opts = OptionParser.new
opts.on("-s", “–size VAL”, Integer) do |val|
puts “-s #{val}”
puts val
end
I think the “Integer” is unnecessary. Here’s how I usually use it:
opts.on("-p", “–prefix NAME”, “REQUIRED: Set the prefix NAME (like
‘ldpg’).”) {|p| $prefix = p}
HTH,
Keith
Not working on my end… Still PUTS nothing?
Am I calling it wrong?
ruby test.rb -p test
or
ruby test.rb -ptest
still put nothing
Hey… Well, I was… There really must be something up here.
Code: (test.rb)
require ‘optparse’
opts = OptionParser.new
opts.on("-s", “–size VAL”, “Something to describe size”) {|s| puts
“Size is: #{s}”}
opts.parse! # the important part…
Result:
C:\temp>ruby test.rb -s “Very Big”
C:\temp>
On Monday 20 March 2006 1:33 pm, [email protected] wrote:
Not working on my end… Still PUTS nothing?
Are you parsing them?
keith@devel /work/tools/keith/bin/oneoff $ cat ./rubytalk.rb
#!/usr/bin/env ruby
require ‘optparse’
opts = OptionParser.new
opts.on("-s", “–size VAL”, “Something to describe size”) {|s| puts
“Size is: #{s}”}
opts.parse! # the important part…
keith@devel /work/tools/keith/bin/oneoff $ ./rubytalk.rb -s “Very Big”
Size is: Very Big
HTH,
Keith
On Tue, 21 Mar 2006, [email protected] wrote:
C:\temp>ruby – test.rb -s “Very Big”
^^
^^
^^
you are passing ‘-s’ to ruby, not test.rb. the ‘–’ tells ruby to stop
processing command line options.
-a
That seems right! But alas
C:\temp>ruby – test.rb -s “Very Big”
C:\temp>
Nada… This isn’t working either:
c:\temp>test.rb -s “Very Big”
c:\temp>
(But it kind of rules out the problem being the – though right?)
On Tue, 21 Mar 2006, [email protected] wrote:
That seems right! But alas
C:\temp>ruby – test.rb -s “Very Big”
try
ruby test.rb – -s “Very Big”
-a