2
我正在嘗試使用OptionParser來讀取多個選項,並讓它們都作用於一個文件名。 Ex: myprogram.rb -a -b file.txt
如何讓2個選項共享一個強制性參數,同時允許像-h
這樣的東西在沒有參數的情況下運行?目前上面的行只是讓-a
以-b
爲參數。Ruby OptionParser:2個選項,1個參數
optionparser.on("-a FILENAME", "Do this") do |a|
puts a
end
optionparser.on("-b FILENAME", "Do that") do |b|
puts b
end
編輯:
它是做什麼:
myprogram.rb -a -b file.txt
=> -b
我需要它做的事:
myprogram.rb -a -b file.txt
=> file.txt
=> file.txt
注:
這些命令應該能夠獨立運行,並且可以同時運行,類似於ls -a ..
,ls -l ..
和ls -a -l ..
但是,如果沒有給出文件名,NEITHER命令應該可以工作。理想情況下,此解決方案應與任何選項配合使用。
Docs參考http://ruby-doc.org/stdlib-1.9.3/libdoc/optparse/rdoc/OptionParser.html – AnthonyW 2013-04-04 15:57:17