Приложение 20.
Опции интерпретатора perl

Ниже кратко описаны все опции интерпретатора perl.

-0цифры
Задает восьмеричный код разделителя входных записей $/. Если цифры не указаны, разделителем будет нулевой байт. Значение 777 вызывает считывание файлов целиком, поскольку байта с таким значением нет.
-a
Включает режим авторасщепления в сочетании с опциями -n или -p. В неявный цикл, созданный этими опциями, первым добавляется оператор расщепления массива @F по пробелу или образцу, заданному опцией -F. Например, команда perl -ane 'print pop(@F), "\n";' будет исполняться так:
while (<>) { @F = split(' '); print pop(@F), "\n"; }
-C
Разрешает вызов Windows API в кодировке Unicode.
-c
Режим проверки синтаксиса программы без ее выполнения.
-d
Запускает программу под управлением отладчика perl.
-d:имя
Запускает программу под управлением модуля отладчика, профалейра или трассировщика, имеющего имя Devel:имя.
-Dфлаги
Задает флаги отладчика. Список флагов см. в документации на используемый вами отладчик.
-e строка
Позволяет выполнить одну строку PERL из командной строки. Можно использовать несколько опций -e.
-Fобразец
Задает образец для расщепления по опции -a.
-h
Выводит список всех опций.
-i -i расширение
Указывает, что файлы, обрабатываемые оператором <>, должны редактироваться. Для этого входной файл переименовывается, а выходной файл получает его исходное имя. Если расширение задано, то старый вариант файла сохраняется с этим расширением; в противном случае он будет заменен новым содержанием.
-Iпуть
Задает путь поиска модулей PERL и файлов .h для препроцессора C.
-lцифры
Выполняет автоматическую обработку концов строк. Во-первых, с опциями -n или -p автоматически удаляются концевые разделители строк (переменная $/). Во-вторых, переменной $\ присваивается значение восьмеричного числа, заданного цифрами.
-mстрока -m-строка
-mстрока выполняет оператор use строка(); перед выполнением программы. -m-строка выполняет оператор no строка(); перед выполнением программы.
-Mстрока -Mстрока
-Mстрока выполняет оператор use строка; перед выполнением программы. -M-строка выполняет оператор no строка; перед выполнением программы.
-n
Заключает текст программы в следующий цикл:
LINE: while (<>) { ... }
Это позволяет программе выполнить итерацию по всем аргументам командной строки.
-p
Заключает текст программы в следующий цикл:
LINE: while (<>) { ... } continue { print or die "-p destination: $!\n"; }
Это позволяет программе выполнить итерацию по всем аргументам командной строки.
-P
Передает программу препроцессору C перед ее компиляцией.
-s
Указывает, что опции командной строки нужно не заносить в массив @ARGV, а создавать переменные с соответствующими именами (например, опция -xyz=abc создаст переменную $xyz и присвоит ей значение 'abc'.
-S
Указывает интерпретатору, что программу нужно искать в переменной окружения PATH.
-T
Включает проверку безопасности операций.
-u
Устаревшая опция.
-U
Разрешает выполнение "небезопасных" операций (например, удаление каталогов).
-v
Выводит на stdout версию и номер сборки интерпретатора.
-V
Выводит на stdout информацию о конфигурации интерпретатора.
-V:имя
Выводит на stdout значение заданной переменной из файла конфигурации.
-w
Выводит предупреждения обо всех конструкциях, сомнительных с точки зрения интерпретатора.
-W
Разрешает вывод всех предупреждений.
-X
Запрещает вывод всех предупреждений.
-x путь
Сообщает интерпретатору, что программа включена в текстовый файл, содержащий и другую информацию (например, в почтовое сообщение). По этой опции игнорируется весь текст файла до первой строки, которая начинается с #! и содержит строку perl. Если задан путь, то перед выполнением программы этот путь будет сделан текущим каталогом.