Spec-Zone.ru › Perl 5.38

Perl

СОДЕРЖАНИЕ

  • ИМЯ
  • СИНОПСИС
  • ПОЛУЧЕНИЕ ПОМОЩИ
    • Обзор
    • Учебники
    • Справочник
    • Внутреннее устройство и интерфейс языка C
    • История
    • Разное
    • Языковые особенности
    • Особенности платформ
    • Заглушки для удаленных документов
  • ОПИСАНИЕ
  • ДОСТУПНОСТЬ
  • СРЕДА
  • АВТОР
  • ФАЙЛЫ
  • СМОТРИТЕ ТАКЖЕ
  • ДИАГНОСТИКА
  • ОШИБКИ
  • ПРИМЕЧАНИЯ

ИМЯ

perl - интерпретатор языка Perl 5

СИНОПСИС

perl [ -sTtuUWX ] [ -hv ] [ -V[:configvar] ] [ -cw ] [ -d[t][:debugger] ] [ -D[number/list] ] [ -pna ] [ -Fpattern ] [ -l[octal] ] [ -0[octal/hexadecimal] ] [ -Idir ] [ -m[-]module ] [ -M[-]'module...' ] [ -f ] [ -C [number/list] ] [ -S ] [ -x[dir] ] [ -i[extension] ] [ [-e|-E] 'command' ] [ -- ] [ programfile ] [ argument ]...

Для получения дополнительной информации об этих параметрах, вы можете запустить perldoc perlrun.

ПОЛУЧЕНИЕ ПОМОЩИ

Программа perldoc предоставляет доступ ко всей документации, которая поставляется с Perl. Вы можете получить больше документации, учебников и сообщества поддержки онлайн на сайте https://www.perl.org/.

Если вы новичок в Perl, вы должны начать с запуска perldoc perlintro, это общее введение для начинающих, предоставляющее некоторую информацию для навигации по остальной обширной документации Perl. Запустите perldoc perldoc, чтобы узнать больше о возможностях perldoc.

Для удобства доступа, руководство по Perl разделено на несколько разделов.

Обзор

perl		Perl overview (this section)
perlintro		Perl introduction for beginners
perlrun		Perl execution and options
perltoc		Perl documentation table of contents

Учебники

perlreftut		Perl references short introduction
perldsc		Perl data structures intro
perllol		Perl data structures: arrays of arrays

perlrequick 	Perl regular expressions quick start
perlretut		Perl regular expressions tutorial

perlootut		Perl OO tutorial for beginners

perlperf		Perl Performance and Optimization Techniques

perlstyle		Perl style guide

perlcheat		Perl cheat sheet
perltrap		Perl traps for the unwary
perldebtut		Perl debugging tutorial

perlfaq		Perl frequently asked questions
  perlfaq1		General Questions About Perl
  perlfaq2		Obtaining and Learning about Perl
  perlfaq3		Programming Tools
  perlfaq4		Data Manipulation
  perlfaq5		Files and Formats
  perlfaq6		Regexes
  perlfaq7		Perl Language Issues
  perlfaq8		System Interaction
  perlfaq9		Networking

Справочник

perlsyn		Perl syntax
perldata		Perl data structures
perlop		Perl operators and precedence
perlsub		Perl subroutines
perlfunc		Perl built-in functions
  perlopentut	Perl open() tutorial
  perlpacktut	Perl pack() and unpack() tutorial
perlpod		Perl plain old documentation
perlpodspec 	Perl plain old documentation format specification
perldocstyle	Perl style guide for core docs
perlpodstyle	Perl POD style guide
perldiag		Perl diagnostic messages
perldeprecation     Perl deprecations
perllexwarn 	Perl warnings and their control
perldebug		Perl debugging
perlvar		Perl predefined variables
perlre		Perl regular expressions, the rest of the story
perlrebackslash	Perl regular expression backslash sequences
perlrecharclass	Perl regular expression character classes
perlreref		Perl regular expressions quick reference
perlref		Perl references, the rest of the story
perlform		Perl formats
perlobj		Perl objects
perltie		Perl objects hidden behind simple variables
perlclass           Perl class syntax
  perldbmfilter	Perl DBM filters

perlipc		Perl interprocess communication
perlfork		Perl fork() information
perlnumber		Perl number semantics

perlthrtut		Perl threads tutorial

perlport		Perl portability guide
perllocale		Perl locale support
perluniintro	Perl Unicode introduction
perlunicode 	Perl Unicode support
perlunicook 	Perl Unicode cookbook
perlunifaq		Perl Unicode FAQ
perluniprops	Index of Unicode properties in Perl
perlunitut		Perl Unicode tutorial
perlebcdic		Considerations for running Perl on EBCDIC platforms

perlsec		Perl security
perlsecpolicy	Perl security report handling policy

perlmod		Perl modules: how they work
perlmodlib		Perl modules: how to write and use
perlmodstyle	Perl modules: how to write modules with style
perlmodinstall	Perl modules: how to install from CPAN
perlnewmod		Perl modules: preparing a new module for distribution
perlpragma		Perl modules: writing a user pragma

perlutil		utilities packaged with the Perl distribution

perlfilter		Perl source filters

perldtrace		Perl's support for DTrace

perlglossary	Perl Glossary

Внутреннее устройство и интерфейс языка C

perlembed		Perl ways to embed perl in your C or C++ application
perldebguts 	Perl debugging guts and tips
perlxstut		Perl XS tutorial
perlxs		Perl XS application programming interface
perlxstypemap	Perl XS C/Perl type conversion tools
perlclib		Internal replacements for standard C library functions
perlguts		Perl internal functions for those doing extensions
perlcall		Perl calling conventions from C
perlmroapi		Perl method resolution plugin interface
perlreapi		Perl regular expression plugin interface
perlreguts		Perl regular expression engine internals
perlclassguts	Internals of class syntax

perlapi		Perl API listing (autogenerated)
perlintern		Perl internal functions (autogenerated)
perliol		C API for Perl's implementation of IO in Layers
perlapio		Perl internal IO abstraction interface

perlhack		Perl hackers guide
perlsource		Guide to the Perl source tree
perlinterp		Overview of the Perl interpreter source and how it works
perlhacktut 	Walk through the creation of a simple C code patch
perlhacktips	Tips for Perl core C code hacking
perlpolicy		Perl development policies
perlgov		Perl Rules of Governance
perlgit		Using git with the Perl repository

История

perlhist		Perl history records
perldelta		Perl changes since previous version
perl5361delta	Perl changes in version 5.36.1
perl5360delta	Perl changes in version 5.36.0
perl5341delta	Perl changes in version 5.34.1
perl5340delta	Perl changes in version 5.34.0
perl5321delta	Perl changes in version 5.32.1
perl5320delta	Perl changes in version 5.32.0
perl5303delta	Perl changes in version 5.30.3
perl5302delta	Perl changes in version 5.30.2
perl5301delta	Perl changes in version 5.30.1
perl5300delta	Perl changes in version 5.30.0
perl5283delta	Perl changes in version 5.28.3
perl5282delta	Perl changes in version 5.28.2
perl5281delta	Perl changes in version 5.28.1
perl5280delta	Perl changes in version 5.28.0
perl5263delta	Perl changes in version 5.26.3
perl5262delta	Perl changes in version 5.26.2
perl5261delta	Perl changes in version 5.26.1
perl5260delta	Perl changes in version 5.26.0
perl5244delta	Perl changes in version 5.24.4
perl5243delta	Perl changes in version 5.24.3
perl5242delta	Perl changes in version 5.24.2
perl5241delta	Perl changes in version 5.24.1
perl5240delta	Perl changes in version 5.24.0
perl5224delta	Perl changes in version 5.22.4
perl5223delta	Perl changes in version 5.22.3
perl5222delta	Perl changes in version 5.22.2
perl5221delta	Perl changes in version 5.22.1
perl5220delta	Perl changes in version 5.22.0
perl5203delta	Perl changes in version 5.20.3
perl5202delta	Perl changes in version 5.20.2
perl5201delta	Perl changes in version 5.20.1
perl5200delta	Perl changes in version 5.20.0
perl5184delta	Perl changes in version 5.18.4
perl5182delta	Perl changes in version 5.18.2
perl5181delta	Perl changes in version 5.18.1
perl5180delta	Perl changes in version 5.18.0
perl5163delta	Perl changes in version 5.16.3
perl5162delta	Perl changes in version 5.16.2
perl5161delta	Perl changes in version 5.16.1
perl5160delta	Perl changes in version 5.16.0
perl5144delta	Perl changes in version 5.14.4
perl5143delta	Perl changes in version 5.14.3
perl5142delta	Perl changes in version 5.14.2
perl5141delta	Perl changes in version 5.14.1
perl5140delta	Perl changes in version 5.14.0
perl5125delta	Perl changes in version 5.12.5
perl5124delta	Perl changes in version 5.12.4
perl5123delta	Perl changes in version 5.12.3
perl5122delta	Perl changes in version 5.12.2
perl5121delta	Perl changes in version 5.12.1
perl5120delta	Perl changes in version 5.12.0
perl5101delta	Perl changes in version 5.10.1
perl5100delta	Perl changes in version 5.10.0
perl589delta	Perl changes in version 5.8.9
perl588delta	Perl changes in version 5.8.8
perl587delta	Perl changes in version 5.8.7
perl586delta	Perl changes in version 5.8.6
perl585delta	Perl changes in version 5.8.5
perl584delta	Perl changes in version 5.8.4
perl583delta	Perl changes in version 5.8.3
perl582delta	Perl changes in version 5.8.2
perl581delta	Perl changes in version 5.8.1
perl58delta 	Perl changes in version 5.8.0
perl561delta	Perl changes in version 5.6.1
perl56delta 	Perl changes in version 5.6
perl5005delta	Perl changes in version 5.005
perl5004delta	Perl changes in version 5.004

Разное

perlbook		Perl book information
perlcommunity	Perl community information

perldoc		Look up Perl documentation in Pod format

perlexperiment	A listing of experimental features in Perl

perlartistic	Perl Artistic License
perlgpl		GNU General Public License

Языковые особенности

perlcn		Perl for Simplified Chinese (in UTF-8)
perljp		Perl for Japanese (in EUC-JP)
perlko		Perl for Korean (in EUC-KR)
perltw		Perl for Traditional Chinese (in Big5)

Особенности платформ

perlaix		Perl notes for AIX
perlamiga		Perl notes for AmigaOS
perlandroid		Perl notes for Android
perlbs2000		Perl notes for POSIX-BC BS2000
perlcygwin		Perl notes for Cygwin
perlfreebsd 	Perl notes for FreeBSD
perlhaiku		Perl notes for Haiku
perlhpux		Perl notes for HP-UX
perlhurd		Perl notes for Hurd
perlirix		Perl notes for Irix
perllinux		Perl notes for Linux
perlmacosx		Perl notes for Mac OS X
perlopenbsd 	Perl notes for OpenBSD
perlos2		Perl notes for OS/2
perlos390		Perl notes for OS/390
perlos400		Perl notes for OS/400
perlplan9		Perl notes for Plan 9
perlqnx		Perl notes for QNX
perlriscos		Perl notes for RISC OS
perlsolaris 	Perl notes for Solaris
perlsynology 	Perl notes for Synology
perltru64		Perl notes for Tru64
perlvms		Perl notes for VMS
perlvos		Perl notes for Stratus VOS
perlwin32		Perl notes for Windows

Заглушки для удаленных документов

perlboot		
perlbot		
perlrepository
perltodo
perltooc		
perltoot		

В Unix-подобных системах эти файлы документации обычно также доступны в виде man-страниц для использования с программой man.

Некоторые документы недоступны в виде man-страниц, поэтому, если перекрестная ссылка не найдена с помощью man, попробуйте её с perldoc. Perldoc также может напрямую перенаправить вас к документации по функциям (с помощью ключа -f). Обратитесь к perldoc --help (или perldoc perldoc или man perldoc) для получения других полезных вариантов, которые предлагает perldoc.

В общем случае, если что-то странное произошло с вашей программой и вы не уверены, где искать помощь, попробуйте сделать код совместимым с use strict и use warnings. Это часто укажет точное место проблемы.

ОПИСАНИЕ

Perl официально означает Practical Extraction and Report Language, за исключением случаев, когда это не так.

Perl изначально был языком, оптимизированным для сканирования произвольных текстовых файлов, извлечения информации из этих текстовых файлов и печати отчётов на основе этой информации. Он быстро стал хорошим языком для многих задач управления системой. На протяжении многих лет Perl превратился в универсальный язык программирования. Он широко используется для всего, от быстрых "однострочников" до разработки масштабных приложений.

Язык предназначен для того, чтобы быть практичным (лёгким в использовании, эффективным, полным), а не красивым (маленьким, изящным, минимальным). Он объединяет (по мнению автора, во всяком случае) лучшие черты sed, awk и sh, что делает его знакомым и простым в использовании для пользователей Unix для быстрого решения раздражающих проблем. Его универсальные средства программирования поддерживают процедурную, функциональную и объектно-ориентированную парадигмы программирования, что делает Perl удобным языком для долгосрочных крупных проектов, независимо от ваших предпочтений.

Корни Perl в обработке текста не были забыты со временем. Он по-прежнему обладает одними из самых мощных регулярных выражений, которые можно найти, и его поддержка Unicode текста — на высшем уровне. Он также обрабатывает все типы структурированного текста благодаря обширной коллекции расширений. Эти библиотеки, собранные в CPAN, предоставляют готовые решения для огромного числа проблем. Когда они не устанавливают стандарт сами, они берут лучшее от лучших — так же, как и сам Perl.

ДОСТУПНОСТЬ

Perl доступен для большинства операционных систем, включая практически все Unix-подобные платформы. Список см. в "Supported Platforms" in perlport.

СРЕДА

См. "ENVIRONMENT" in perlrun.

АВТОР

Larry Wall <larry@wall.org>, с помощью многих других людей.

Если ваши истории успеха и отзывы о Perl могут быть полезны другим, желающим продвигать использование Perl в своих приложениях, или если вы хотите просто выразить благодарность Лэрри и разработчикам Perl, напишите по адресу perl-thanks@perl.org .

ФАЙЛЫ

"@INC"			locations of perl libraries

"@INC" выше — ссылка на встроенную переменную с тем же именем; см. perlvar для получения дополнительной информации.

СМОТРИТЕ ТАКЖЕ

https://www.perl.org/       the Perl homepage
https://www.perl.com/       Perl articles
https://www.cpan.org/       the Comprehensive Perl Archive
https://www.pm.org/         the Perl Mongers

ДИАГНОСТИКА

Использование pragmy use strict гарантирует, что все переменные правильно объявлены и предотвращает другие неправильные использования функций Perl предыдущих версий. Они включены по умолчанию в пределах действия use v5.12 (или выше).

Pragma use warnings генерирует полезные диагностические сообщения. Он включен по умолчанию, когда вы указываете use v5.35 (или выше). Также можно использовать флаг -w, но его использование обычно не рекомендуется, так как он применяется ко всему исполняемому коду Perl, включая тот, который не под вашим контролем.

См. perldiag для объяснений всех диагностических сообщений Perl. Pragma use diagnostics автоматически преобразует обычно краткие предупреждения и ошибки Perl в более подробные формы.

Ошибки компиляции укажут номер строки ошибки, с указанием следующего токена или типа токена, который должен был быть проверен. (В скрипте, переданном Perl через переключатели -e, каждый -e считается за одну строку.)

У скриптов с установленным идентификатором пользователя (setuid) есть дополнительные ограничения, которые могут привести к сообщениям об ошибках, таким как «Небезопасная зависимость». См. perlsec.

Мы упоминали, что вам определённо стоит рассмотреть использование pragmy use warnings?

ОШИБКИ

Поведение, подразумеваемое pragмой use warnings, не является обязательным.

Perl зависит от определений вашей машины для различных операций, таких как преобразование типов, atof() и вывод с плавающей запятой с помощью sprintf().

Если ваш stdio требует seek или eof между чтением и записью в определённом потоке, то это необходимо и для Perl. (Это не относится к sysread() и syswrite().)

Хотя ни один из встроенных типов данных не имеет произвольных ограничений размера (кроме размера памяти), всё же есть несколько произвольных ограничений: имя данной переменной не может быть длиннее 251 символа. Номера строк, отображаемые в диагностических сообщениях, хранятся во внутренней памяти как целые числа, поэтому они ограничены максимальным значением 65535 (более высокие числа обычно затрагиваются переполнением).

Вы можете отправить свои сообщения об ошибках (убедитесь, что вы включили всю информацию о конфигурации, как выведено программой myconfig в дереве исходного кода perl, или с помощью perl -V) по адресу https://github.com/Perl/perl5/issues.

Perl фактически означает Pathologically Eclectic Rubbish Lister, но не говорите об этом никому.

ПРИМЕЧАНИЯ

Девиз Perl: «Существует более одного способа сделать это». Выяснение того, сколько ещё осталось, предлагается как упражнение для читателя.

Три основных добродетели программиста: Леность, Нетерпеливость и Наглость. См. книгу по верблюдам, чтобы понять почему.

© 1993–2023 Larry Wall and others
Licensed under the GNU General Public License version 1 or later, or the Artistic License.
The Perl logo is a trademark of the Perl Foundation.
https://perldoc.perl.org/5.38.0/perl.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API