Я пытаюсь изменить упражнение из рубинового урока.Вместо жесткого кодирования имени в сценарии, я хочу использовать его как переменную CL и передать его в сценарий.
Я запускаю сценарий с аргументом «Мэри» ruby hashes.rb Mary
Вот сценарий
#!/usr/bin/ruby
# Script Name - hashes.rb
favorite_pizza = {
"John" => "Pepperoni",
"Tim" => "Mushroom",
"Mary" => "Cheese"
}
name=ARGV
puts favorite_pizza[name]`
Я получаю пустой вывод при запуске сценария.Если я добавлю строку puts name
в скрипт, я увижу вывод Mary
, поэтому я знаю, что переменная установлена правильно.Но теперь, как я пишу puts favorite_pizza[???]
, я никогда не получаю ожидаемый Cheese
вывод.В скобках я попробовал [name]
и [ARGV]
и ["#{name}"]
и ["#{ARGV}"]
и все, что я могу придумать, Google не поможет.
Если я жестко закодирую его, puts favorite_pizza["Mary"]
Я получу ожидаемый результат Cheese
.
Заранее спасибо.