У меня проблема.
Я хочу запустить сценарий ruby из другого сценария ruby и записать его выводимую информацию, одновременно позволяя выводить его на экран.
#!/usr/bin/env ruby
print "Enter your password: "
password = gets.chomp
puts "Here is your password: #{password}"
Файл сценария, который я запускаю:
output = `runner`
puts output.match(/Here is your (password: .*)/).captures[0].to_s
Как вы видите, здесь есть проблема.
В первой строке start.rb экран пуст.
Я не вижу "Enter" ваш пароль: "в runner.
Есть ли способ отобразить вывод скрипта runner до его завершения, и все же позвольте мне записать его в строку, чтобы я мог обработать информацию, например, используя сопоставление, как в этом примере ?