Ruby Language
Специальные константы в Ruby
Поиск…
__ФАЙЛ__
Относительный путь к файлу из текущего каталога выполнения
Предположим, что у нас есть эта структура каталогов: /home/stackoverflow/script.rb
script.rb содержит:
puts __FILE__
Если вы находитесь внутри / дома / StackOverflow и выполнить сценарий , как ruby script.rb
тогда __FILE__
Выведет script.rb
Если вы внутри / дома , то он будет выводить stackoverflow/script.rb
Очень полезно получить путь к скрипту в версиях до 2.0, где __dir__
не существует.
Примечание __FILE__
не равно __dir__
__dir__
__dir__
не является константой, а функцией
__dir__
равно File.dirname(File.realpath(__FILE__))
$ PROGRAM_NAME или $ 0
Содержит имя исполняемого скрипта.
__FILE__
же, что и __FILE__
если вы выполняете этот скрипт.
$$
Номер процесса Ruby, выполняющего этот скрипт
$ 1, $ 2 и т. Д.
Содержит подшаблон из соответствующего набора круглых скобок в последнем успешном сопоставленном шаблоне, не считая шаблоны, согласованные во вложенных блоках, которые уже были выведены, или nil, если последний совпадение шаблона не удалось. Эти переменные доступны только для чтения.
ARGV или $ *
Аргументы командной строки для скрипта. Параметры интерпретатора Ruby уже удалены.
STDIN
Стандартный вход. Значение по умолчанию для $ stdin
STDOUT
Стандартный выход. Значение по умолчанию для $ stdout
STDERR
Стандартный выход ошибки. Значение по умолчанию для $ stderr
$ STDERR
Текущий стандартный вывод ошибки.
$ STDOUT
Текущий стандартный вывод
$ STDIN
Текущий стандартный ввод
ENV
Хэш-подобный объект содержит текущие переменные среды. Установка значения в ENV изменяет среду для дочерних процессов.