В рубине можно указать для вызова другого ruby script с использованием того же интерпретатора ruby, что и исходный script, выполняемый?
Например, если a.rb запускает b.rb пару раз, можно ли заменить
system("ruby", "b.rb", "foo", "bar")
с чем-то вроде
run_ruby("b.rb", "foo", "bar")
так что, если вы использовали ruby1.9.1 a.rb
в оригинале, будет использоваться на b.rb, но если вы использовали ruby a.rb
в оригинале, ruby
будет использоваться на b.rb?
Я бы предпочел не использовать shebangs, так как я бы хотел, чтобы он мог работать на разных компьютерах, некоторые из которых не имеют /usr/bin/env
.
Изменить: Я не имел в виду load
или require
и тому подобное, но порождал новые процессы (поэтому я могу использовать несколько процессоров).