В чем смысл ARGV в Ruby?
first, second, third = ARGV
puts "The script is called: #{$0}"
puts "Your first variable is: #{first}"
puts "Your second variable is: #{second}"
puts "Your third variable is: #{third}"
Какой смысл в этом, когда для запуска файла мне нужно сделать:
ruby ex1.rb
и чтобы ввести первую, вторую и третью переменные, мне нужно ввести
ruby ex1.rb blah blah blah
Какую пользу это приносит человеку, управляющему программой? Они все равно не могут этого сделать, так как я предполагаю, что это исполняемый файл:
user = ARGV.first
prompt = '> '
puts "Hi #{user}, I'm the #{$0} script."
puts "I'd like to ask you a few questions."
puts "Do you like me #{user}?"
print prompt
likes = STDIN.gets.chomp()
puts "Where do you live #{user}?"
print prompt
lives = STDIN.gets.chomp()
puts "What kind of computer do you have?"
print prompt
computer = STDIN.gets.chomp()
puts <<MESSAGE
Alright, so you said #{likes} about liking me.
You live in #{lives}. Not sure where that is.
And you have a #{computer} computer. Nice.
MESSAGE
Может кто-нибудь объяснить мне это?
#!/usr/bin/env ruby
, в верхней части вашего файлаex1.rb
. Если выchmod a+x ex1.rb
, вы можете запустить его без префиксаruby
:./ex1.rb
. И на самом деле расширение.rb
даже не нужно, что означает, что вы, возможно, уже использовали ruby-скрипты, которые принимают аргументы командной строки, даже не осознавая этого. - person beporter   schedule 11.06.2020