Встроенные переменные Perl
Описанные в данной главе переменные имеют в Perl специальные значения. Они обозначаются несколько непривычно для "глаза" программистов, т.к. состоят обычно только из двух символов, причем первый это '$' символ, с которого начинаются имена всех переменных, и произвольный часто не буквенно-цифровой символ. Если вы хотите пользоваться их "нормальными" буквенными синонимами, то вам нужно указать в начале программы: use English; Точно так же если вы захотите пользоваться переменными и методами текущего указателя файлов вы можете написать: use FileHandle;после этого можно просто писать: метод указатель выражениеили указатель -> метод(выражение) Ниже приводятся имена как в короткой, так и в длинной (словесной) форме. Некоторые из встроенных переменных имеют доступ только на чтение, поэтому изменить их значение просто невозможно. $_ Переменная - по умолчанию для операторов ввода и поиска. То есть если в качестве аргумента не указана никакая переменная, то используется именно эта. $цифра Содержит найденную подстроку в последнем поиске, когда шаблон содержит метасимволы в круглых скобках. Цифра в данном случае, это номер скобок. Первая подстрока имеет номер 1. $& Найденная подстрока в последнем поиске по шаблону. $` Подстрока, предшествующая найденной подстроке. $' Подстрока, последующая за найденной подстрокой. $+ Подстрока, найденная в поиске с выбором по "или". $* Если значение этой переменной установить равным 1, то переменная, в которой осуществляется поиск, будет считаться многострочной, т.е. содержащей символы '\n' - перевод строки. Если значение равно 0, то переменная считается однострочной. В Perl версии 5 и выше не рекомендуется использовать эту переменную. $. Номер прочитанной строки последнего оператора ввода. Закрытие файла вызывает очистку значения этой переменной. $/ Символ - признак конца входной строки. По умолчанию это '\n' $| Если присвоить этой переменной ненулевое значение, то будет сброс буфера вывода после каждой операции вывода. Значение по умолчанию - 0 $, Символ, добавляемый оператором print после каждого элемента из списка параметров. $\ Символ, добавляемый print после вывода всех параметров. $" Аналогичен "$,", но добавляется после каждого элемента массива, указанного в "....". $; Символ - разделитель для эмуляции многомерных массивов в хеш массивах. По умолчанию '\034'. $# Формат по умолчанию для вывода чисел. $% Формат по умолчанию для вывода номеров страниц. $= Длина одной страницы. По умолчанию 60 строк. $- Количество оставшихся строк на странице. $~ Имя формата текущего вывода. По умолчанию имя указателя. $^ Имя текущего формата для заголовка страницы. $: Символы переноса строки для многострочных полей. В строке формата такие поля начинаются символом '^'. По умолчанию '\n-'. $^L Символ перевода формата ( смены листа). По умолчанию '\f'. $^A Текущее значение аккумулятора функции write() для format(). Значение этой переменной можно увидеть только при использовании функции formline(), т.к. write() очищает ее после каждого вывода. $? Данная переменная содержит статус завершения таких процессов как: закрытие pipe, завершение функций system(), wait() и `...`. $! В числовом контексте возвращает код ошибки errno. В строковом - строку сообщения об ошибке. Можно принудительно присвоить этой переменной код ошибки, что бы получить системное сообщение для данного кода или установить код завершения для функции die(). $@ Сообщение об ошибке последней команды eval(). $$ Номер текущего процесса. $< Реальный UID текущего процесса. $> Эффективный UID текущего процесса. $( $GID Реальный GID текущего процесса. $) Эффективный GID текущего процесса. $O Имя файла программы. Если этой переменной присвоить какое-нибудь значение, то его можно видеть в команде ps, что удобно для контроля за состоянием программы. $[ Номер первого элемента массива или символа строки. Значение по умолчанию - 0. $] Строка - сообщение версии Perl. Печатается по команде perl -v Применяется в программе для определения рабочей версии Perl. В числовом контексте это номер версии плюс номер модификации / 1000. $^D Текущее значение ключа отладки '-D'. $^F Номер максимального системного описателя файлов (system file descriptor). Обычно это 2. $^I Текущее значение inplace-edit возможности. Для отключения используйте undef. $^P Внутренний флаг отладки. Применяется для того, чтобы отладчик не отслеживал самого себя. $^T Время в секундах с начала 1970 года старта текущей программы. $^W Значение флага '-w'. true -если включено и false - выключено. $^X Команда запуска Perl. Аналогично argv[0] в С. $ARGV Имя текущего файла, читаемого оператором '<>'. @ARGV Массив параметров строки запуска программы. Внимание! @#ARGV - меньше количества параметров на 1, т.к. $ARGV[0] это первый параметр (не имя программы). @INC Список директорий диска, которые просматривает Perl для выполнения команд do, require или use. %INC Этот хеш содержит имена директорий для имен использованных файлов командами do или require. Ключ - имя файла, а значение - директория. $ENV{выражение} Хеш %ENV содержит значения переменных окружения. Изменение этих значений вызывает изменение окружения для процессов потомков. $SIG{выражение} Хеш %SIG содержит имена подпрограмм для таких системных сигналов как INT, QUIT, PIPE, ... Значение 'DEFAULT' - для системной обработки. 'IGNORE' - игнорировать данный сигнал.
[Назад] [Содержание] [Вперед] |