我尝试将我的脚本设置为运行类似
的内容ruby Script.rb --ip "192.168.3.206"
但如果没有ip参数,则使用默认值“192.168.1.1
我试试这段代码,但它总是以ip
的形式返回niloptions = {}
OptionParser.new do |opts|
options[:ip] = "192.168.1.1"
opts.on("-i", "--ip", String, "Set ip") do |command_line_ip|
options[:ip] = command_line_ip
end
end.parse!
p options
此代码的输出为
{:ip=>nil}
请告诉我我的代码在哪里错了?
答案 0 :(得分:4)
你必须表明你的--ip开关有一个参数:
opts.on("-i MANDATORY", "--ip=MANDATORY", String, "Set ip") do |command_line_ip|