Учебники

Ruby — предопределенные переменные

Предопределенные переменные Ruby влияют на поведение всей программы, поэтому их использование в библиотеках не рекомендуется.

Доступ к значениям в большинстве предопределенных переменных возможен альтернативным способом.

В следующей таблице перечислены все предопределенные переменные Ruby.

$!

Последнее исключение объекта поднято. Доступ к объекту исключения также можно получить с помощью => в предложении спасения .

$ @

Возврат стека для последнего вызванного исключения. Информация о трассировке стека может быть получена методом Extrace # backtrace из последнего исключения.

$ /

Разделитель входной записи (по умолчанию новая строка). get, readline и т. д., принимают их входной разделитель записей в качестве необязательного аргумента.

$ \

Разделитель выходных записей (по умолчанию nil).

$,

Выходной разделитель между аргументами для печати и Array # join (по умолчанию nil). Вы можете указать разделитель явно для Array # join.

$;

Разделитель по умолчанию для split (по умолчанию nil). Вы можете указать разделитель явно для String # split.

$.

Номер последней строки, прочитанной из текущего входного файла. Эквивалент ARGF.lineno.

$ <

Синоним для ARGF.

$>

Синоним для $ defout.

$ 0

Имя текущей исполняемой программы Ruby.

$$

PID процесса текущей исполняемой программы Ruby.

$?

Состояние выхода последнего процесса прекращено.

$:

Синоним для $ LOAD_PATH.

$ DEBUG

Истинно, если указан параметр командной строки -d или —debug.

$ defout

Целевой вывод для print и printf ( $ stdout по умолчанию).

$ F

Переменная, которая получает выходные данные из split, когда указана опция -a. Эта переменная устанавливается, если параметр командной строки -a указан вместе с параметром -p или -n.

$ FILENAME

Имя файла, который в данный момент читается из ARGF. Эквивалент ARGF.filename.

$ LOAD_PATH

Массив, содержащий каталоги для поиска при загрузке файлов с загрузкой и требующих методов.

$ SAFE

Уровень безопасности

0 → Никакие проверки не выполняются для внешних (поврежденных) данных. (дефолт)

1 → Потенциально опасные операции с испорченными данными запрещены.

2 → Потенциально опасные операции над процессами и файлами запрещены.

3 → Все вновь созданные объекты считаются испорченными.

4 → Изменение глобальных данных запрещено.

$ STDIN

Стандартный ввод (по умолчанию STDIN).

$ STDOUT

Стандартный вывод (STDOUT по умолчанию).

$ STDERR

Стандартная ошибка (по умолчанию STDERR).

$ VERBOSE

True, если указан параметр командной строки -v, -w или —verbose.

$ — х

Значение параметра интерпретатора -x (x = 0, a, d, F, i, K, l, p, v). Эти варианты перечислены ниже

$ -0

Значение параметра интерпретатора -x и псевдоним $ /.

$ -a

Значение опции интерпретатора -x и true, если установлена ​​опция -a. Только для чтения.

$ -d

Значение параметра интерпретатора -x и псевдоним $ DEBUG

$ -F

Значение параметра интерпретатора -x и псевдоним $ ;.

$ -i

Значение параметра интерпретатора -x и в режиме редактирования на месте содержит расширение, в противном случае — ноль. Можно включить или отключить режим редактирования на месте.

$ -I

Значение параметра интерпретатора -x и псевдоним $ :.

$ -l

Значение опции интерпретатора -x и true, если установлена ​​опция -l. Только для чтения.

$ -p

Значение опции интерпретатора -x и true, если установлена ​​опция -p. Только для чтения.

$ _

Локальная переменная, последняя строка, прочитанная get или readline в текущей области видимости.

$ ~

Локальная переменная MatchData, относящаяся к последнему совпадению. Метод регулярного выражения # match возвращает информацию о последнем совпадении.

$ n ($ 1, $ 2, $ 3 …)

Строка, найденная в n-й группе последнего совпадения с образцом. Эквивалентно m [n], где m — объект MatchData .

$ &

Строка, найденная в последнем совпадении с образцом. Эквивалентно m [0], где m — объект MatchData .

$ `

Строка, предшествующая совпадению в последнем сопоставлении с образцом. Эквивалент m.pre_match, где m — объект MatchData .

Строка, следующая за совпадением в последнем совпадении с образцом. Эквивалент m.post_match, где m — объект MatchData.

$ +

Строка, соответствующая последней успешно сопоставленной группе в последнем сопоставлении с образцом.