Подтвердить что ты не робот

Ruby: Как загрузить файл в интерактивную рубиновую консоль (IRB)?

Я использую IRB (интерактивную консоль ruby), чтобы узнать, как программировать с помощью Ruby. Как загрузить файл в консоль, если я сначала напишу свои программы в текстовом редакторе?

4b9b3361

Ответ 1

Если вам нужно загрузить только один файл в IRB, вы можете вызвать его с помощью irb -r ./your_file.rb, если он находится в одном каталоге.

Это автоматически требует файла и позволяет вам немедленно работать с ним.

Ответ 2

Используя ruby ​​1.9.3 на Ubuntu 14.04, я могу загружать файлы из текущего каталога в irb с помощью следующей командной строки:

irb -I . -r foo.rb

где foo.rb - это файл, который я хочу загрузить из текущего каталога. Опция -I необходима для добавления текущего каталога (.) в путь рубиновой загрузки, как описано на странице рубинового человека. Это позволяет require файлам из текущего каталога, что и делает -r опция irb.

Ключевая вещь, которая не была очевидна для меня, когда у меня возникла эта проблема, - это параметр -I. После этого вы можете вызвать require 'foo.rb' из irb для любых файлов в текущем каталоге. И, конечно, вы можете указать любой каталог, который вы хотите, а не только . с опцией -I. Чтобы включить несколько каталогов в пути загрузки, разделите их на двоеточие (:), например:

irb -I foo/:bar/:baz/

Эта команда добавит каталоги foo, bar и baz в рубиновый путь загрузки.

Конечной альтернативой является использование относительного или абсолютного пути к файлу при использовании require или -r для загрузки файла:

irb -r ./foo.rb

или из irb:

> require './foo.rb'

Ответ 3

Введите irb

И затем

require './ruby_file.rb'

Предполагается, что ruby_file.rb находится в одном каталоге. Настройте соответствующим образом.

Ответ 4

Два способа:

  • для загрузки источника без запуска программы - это дает доступ ко всем переменным и функциям:

source("filename.rb")

  1. запустить программу, а затем перейти в интерактивный режим - это дает доступ только к функциям, а не к переменным:

require("filename.rb")

Ответ 5

Это зависит от вашего рубина. Ruby 1.8 включает ваш текущий путь, а ruby ​​1.9 - нет. Оцените $:, чтобы определить, включен ли ваш путь или нет. Таким образом, в ruby ​​1.9 вы должны использовать весь путь, который всегда является безопасной ставкой.

Затем вы можете использовать require или load для включения файла.

require не требует добавления суффикса файла при попытке найти его и будет включать только один файл. require следует использовать вместо load большую часть времени.

Отметьте Добавление каталога в $LOAD_PATH (Ruby), если вы собираетесь использовать ruby ​​1.8

Ответ 6

Введите рубиновые коды в текстовом редакторе

Сохраните его с расширением .rb (например: demo.rb).

В linux откройте свой терминал, затем смените каталог на текущее местоположение этого файла (команда cd используется для изменения каталога).

После этого введите irb и ваше имя файла (не забудьте указать расширение (.rb)).

нажмите здесь, чтобы посмотреть загрузку рубинового файла с помощью irb

В этом изображении я загрузил простой рубиновый файл, который печатает только "ruby".

Ответ 7

Другой способ загрузить путь в irb - это просто ввести тип, а затем перетащить файл в терминал. -программируется с использованием Linux Mint.

Ответ 8

Для тех, кто хочет загрузить файл .rb из другого каталога. Просто добавьте строковое представление каталога в переменную $:.

> $: << "/directory/to/the/required/rb/file"
> require "some_file"