нОХЯЮММШЕ Б ДЮММНИ ЦКЮБЕ ОЕПЕЛЕММШЕ ХЛЕЧР Б Perl ЯОЕЖХЮКЭМШЕ ГМЮВЕМХЪ. нМХ НАНГМЮВЮЧРЯЪ МЕЯЙНКЭЙН МЕОПХБШВМН ДКЪ "ЦКЮГЮ" ОПНЦПЮЛЛХЯРНБ, Р.Й. ЯНЯРНЪР НАШВМН РНКЭЙН ХГ ДБСУ ЯХЛБНКНБ, ОПХВЕЛ ОЕПБШИ ЩРН '$' ЯХЛБНК, Я ЙНРНПНЦН МЮВХМЮЧРЯЪ ХЛЕМЮ БЯЕУ ОЕПЕЛЕММШУ, Х ОПНХГБНКЭМШИ ВЮЯРН МЕ АСЙБЕММН-ЖХТПНБНИ ЯХЛБНК. еЯКХ БШ УНРХРЕ ОНКЭГНБЮРЭЯЪ ХУ "МНПЛЮКЭМШЛХ" АСЙБЕММШЛХ ЯХМНМХЛЮЛХ, РН БЮЛ МСФМН СЙЮГЮРЭ Б МЮВЮКЕ ОПНЦПЮЛЛШ:
use English;
рНВМН РЮЙ ФЕ ЕЯКХ БШ ГЮУНРХРЕ ОНКЭГНБЮРЭЯЪ ОЕПЕЛЕММШЛХ Х ЛЕРНДЮЛХ РЕЙСЫЕЦН СЙЮГЮРЕКЪ ТЮИКНБ БШ ЛНФЕРЕ МЮОХЯЮРЭ:
use FileHandle;
ОНЯКЕ ЩРНЦН ЛНФМН ОПНЯРН ОХЯЮРЭ:
ЛЕРНД СЙЮГЮРЕКЭ БШПЮФЕМХЕ
ХКХ
СЙЮГЮРЕКЭ -> ЛЕРНД(БШПЮФЕМХЕ)
мХФЕ ОПХБНДЪРЯЪ ХЛЕМЮ ЙЮЙ Б ЙНПНРЙНИ, РЮЙ Х Б ДКХММНИ (ЯКНБЕЯМНИ) ТНПЛЕ. мЕЙНРНПШЕ ХГ БЯРПНЕММШУ ОЕПЕЛЕММШУ ХЛЕЧР ДНЯРСО РНКЭЙН МЮ ВРЕМХЕ, ОНЩРНЛС ХГЛЕМХРЭ ХУ ГМЮВЕМХЕ ОПНЯРН МЕБНГЛНФМН.
$_
$ARG
оЕПЕЛЕММЮЪ - ОН СЛНКВЮМХЧ ДКЪ НОЕПЮРНПНБ ББНДЮ Х ОНХЯЙЮ. рН ЕЯРЭ ЕЯКХ Б ЙЮВЕЯРБЕ ЮПЦСЛЕМРЮ МЕ СЙЮГЮМЮ МХЙЮЙЮЪ ОЕПЕЛЕММЮЪ, РН ХЯОНКЭГСЕРЯЪ ХЛЕММН ЩРЮ.
$ЖХТПЮ
яНДЕПФХР МЮИДЕММСЧ ОНДЯРПНЙС Б ОНЯКЕДМЕЛ ОНХЯЙЕ, ЙНЦДЮ ЬЮАКНМ ЯНДЕПФХР ЛЕРЮЯХЛБНКШ Б ЙПСЦКШУ ЯЙНАЙЮУ. жХТПЮ Б ДЮММНЛ ЯКСВЮЕ, ЩРН МНЛЕП ЯЙНАНЙ. оЕПБЮЪ ОНДЯРПНЙЮ ХЛЕЕР МНЛЕП 1.
$&
$MATCH
мЮИДЕММЮЪ ОНДЯРПНЙЮ Б ОНЯКЕДМЕЛ ОНХЯЙЕ ОН ЬЮАКНМС.
$`
оНДЯРПНЙЮ, ОПЕДЬЕЯРБСЧЫЮЪ МЮИДЕММНИ ОНДЯРПНЙЕ.
$'
$POSTMATCH
оНДЯРПНЙЮ, ОНЯКЕДСЧЫЮЪ ГЮ МЮИДЕММНИ ОНДЯРПНЙНИ.
$+
$LAST_PAREN_MATCH
оНДЯРПНЙЮ, МЮИДЕММЮЪ Б ОНХЯЙЕ Я БШАНПНЛ ОН "ХКХ".
$*
$MULTILINE_MATCHING
еЯКХ ГМЮВЕМХЕ ЩРНИ ОЕПЕЛЕММНИ СЯРЮМНБХРЭ ПЮБМШЛ 1, РН ОЕПЕЛЕММЮЪ, Б ЙНРНПНИ НЯСЫЕЯРБКЪЕРЯЪ ОНХЯЙ, АСДЕР ЯВХРЮРЭЯЪ ЛМНЦНЯРПНВМНИ, Р.Е. ЯНДЕПФЮЫЕИ ЯХЛБНКШ '\n' - ОЕПЕБНД ЯРПНЙХ. еЯКХ ГМЮВЕМХЕ ПЮБМН 0, РН ОЕПЕЛЕММЮЪ ЯВХРЮЕРЯЪ НДМНЯРПНВМНИ. б Perl БЕПЯХХ 5 Х БШЬЕ МЕ ПЕЙНЛЕМДСЕРЯЪ ХЯОНКЭГНБЮРЭ ЩРС ОЕПЕЛЕММСЧ.
$.
$INPUT_LINE_NUMBER
$NR
мНЛЕП ОПНВХРЮММНИ ЯРПНЙХ ОНЯКЕДМЕЦН НОЕПЮРНПЮ ББНДЮ. гЮЙПШРХЕ ТЮИКЮ БШГШБЮЕР НВХЯРЙС ГМЮВЕМХЪ ЩРНИ ОЕПЕЛЕММНИ.
$/
$RS
$INPUT_RECORD_SEPARATOR
яХЛБНК - ОПХГМЮЙ ЙНМЖЮ БУНДМНИ ЯРПНЙХ. оН СЛНКВЮМХЧ ЩРН '\n'
$|
$OUTPUT_AUTOFLUSH
еЯКХ ОПХЯБНХРЭ ЩРНИ ОЕПЕЛЕММНИ МЕМСКЕБНЕ ГМЮВЕМХЕ, РН АСДЕР ЯАПНЯ АСТЕПЮ БШБНДЮ ОНЯКЕ ЙЮФДНИ НОЕПЮЖХХ БШБНДЮ. гМЮВЕМХЕ ОН СЛНКВЮМХЧ - 0
$,
$OFS
$OUTPUT_FIELD_SEPARATOR
яХЛБНК, ДНАЮБКЪЕЛШИ НОЕПЮРНПНЛ print ОНЯКЕ ЙЮФДНЦН ЩКЕЛЕМРЮ ХГ ЯОХЯЙЮ ОЮПЮЛЕРПНБ.
$\
$ORS
$OUTPUT_RECORD_SEPARATOR
яХЛБНК, ДНАЮБКЪЕЛШИ print ОНЯКЕ БШБНДЮ БЯЕУ ОЮПЮЛЕРПНБ.
$"
$LIST_SEPARATOR
юМЮКНЦХВЕМ "$,", МН ДНАЮБКЪЕРЯЪ ОНЯКЕ ЙЮФДНЦН ЩКЕЛЕМРЮ ЛЮЯЯХБЮ, СЙЮГЮММНЦН Б "....".
$;
$SUBSEP
$SUBSCRIPT_SEPARATOR
яХЛБНК - ПЮГДЕКХРЕКЭ ДКЪ ЩЛСКЪЖХХ ЛМНЦНЛЕПМШУ ЛЮЯЯХБНБ Б УЕЬ ЛЮЯЯХБЮУ. оН СЛНКВЮМХЧ '\034'.
$#
$OFMT
тНПЛЮР ОН СЛНКВЮМХЧ ДКЪ БШБНДЮ ВХЯЕК.
$%
$FORMAT_PAGE_NUMBER
тНПЛЮР ОН СЛНКВЮМХЧ ДКЪ БШБНДЮ МНЛЕПНБ ЯРПЮМХЖ.
$=
$FORMAT_LINES_PER_PAGE
дКХМЮ НДМНИ ЯРПЮМХЖШ. оН СЛНКВЮМХЧ 60 ЯРПНЙ.
$-
$FORMAT_LINES_LEFT
йНКХВЕЯРБН НЯРЮБЬХУЯЪ ЯРПНЙ МЮ ЯРПЮМХЖЕ.
$~
$FORMAT_NAME
хЛЪ ТНПЛЮРЮ РЕЙСЫЕЦН БШБНДЮ. оН СЛНКВЮМХЧ ХЛЪ СЙЮГЮРЕКЪ.
$^
$FORMAT_TOP_NAME
хЛЪ РЕЙСЫЕЦН ТНПЛЮРЮ ДКЪ ГЮЦНКНБЙЮ ЯРПЮМХЖШ.
$:
$FORMAT_LINE_BREAK_CHARACTERS
яХЛБНКШ ОЕПЕМНЯЮ ЯРПНЙХ ДКЪ ЛМНЦНЯРПНВМШУ ОНКЕИ. б ЯРПНЙЕ ТНПЛЮРЮ РЮЙХЕ ОНКЪ МЮВХМЮЧРЯЪ ЯХЛБНКНЛ '^'. оН СЛНКВЮМХЧ '\n-'.
$^L
$FORMAT_FORMFEED
яХЛБНК ОЕПЕБНДЮ ТНПЛЮРЮ ( ЯЛЕМШ КХЯРЮ). оН СЛНКВЮМХЧ '\f'.
$^A
$ACCUMULATOR
рЕЙСЫЕЕ ГМЮВЕМХЕ ЮЙЙСЛСКЪРНПЮ ТСМЙЖХХ write() ДКЪ format(). гМЮВЕМХЕ ЩРНИ ОЕПЕЛЕММНИ ЛНФМН СБХДЕРЭ РНКЭЙН ОПХ ХЯОНКЭГНБЮМХХ ТСМЙЖХХ formline(), Р.Й. write() НВХЫЮЕР ЕЕ ОНЯКЕ ЙЮФДНЦН БШБНДЮ.
$?
$CHILD_ERROR
дЮММЮЪ ОЕПЕЛЕММЮЪ ЯНДЕПФХР ЯРЮРСЯ ГЮБЕПЬЕМХЪ РЮЙХУ ОПНЖЕЯЯНБ ЙЮЙ: ГЮЙПШРХЕ pipe, ГЮБЕПЬЕМХЕ ТСМЙЖХИ system(), wait() Х `...`.
$!
$ERRNO $OS_ERROR
б ВХЯКНБНЛ ЙНМРЕЙЯРЕ БНГБПЮЫЮЕР ЙНД НЬХАЙХ errno. б ЯРПНЙНБНЛ - ЯРПНЙС ЯННАЫЕМХЪ НА НЬХАЙЕ. лНФМН ОПХМСДХРЕКЭМН ОПХЯБНХРЭ ЩРНИ ОЕПЕЛЕММНИ ЙНД НЬХАЙХ, ВРН АШ ОНКСВХРЭ ЯХЯРЕЛМНЕ ЯННАЫЕМХЕ ДКЪ ДЮММНЦН ЙНДЮ ХКХ СЯРЮМНБХРЭ ЙНД ГЮБЕПЬЕМХЪ ДКЪ ТСМЙЖХХ die().
$@
$EVAL_ERROR
яННАЫЕМХЕ НА НЬХАЙЕ ОНЯКЕДМЕИ ЙНЛЮМДШ eval().
$$
$PID
$PROCESS_ID
мНЛЕП РЕЙСЫЕЦН ОПНЖЕЯЯЮ.
$<
$UID
$REAL_USER_ID
пЕЮКЭМШИ UID РЕЙСЫЕЦН ОПНЖЕЯЯЮ.
$>
$EUID
$EFFECTIVE_USER_ID
щТТЕЙРХБМШИ UID РЕЙСЫЕЦН ОПНЖЕЯЯЮ.
$( $GID
$REAL_GROUP_ID
пЕЮКЭМШИ GID РЕЙСЫЕЦН ОПНЖЕЯЯЮ.
$)
$EGID
$EFFECTIVE_GROUP_ID
щТТЕЙРХБМШИ GID РЕЙСЫЕЦН ОПНЖЕЯЯЮ.
$O
$PROGRAM_NAME
хЛЪ ТЮИКЮ ОПНЦПЮЛЛШ. еЯКХ ЩРНИ ОЕПЕЛЕММНИ ОПХЯБНХРЭ ЙЮЙНЕ-МХАСДЭ ГМЮВЕМХЕ, РН ЕЦН ЛНФМН БХДЕРЭ Б ЙНЛЮМДЕ ps, ВРН СДНАМН ДКЪ ЙНМРПНКЪ ГЮ ЯНЯРНЪМХЕЛ ОПНЦПЮЛЛШ.
$[
мНЛЕП ОЕПБНЦН ЩКЕЛЕМРЮ ЛЮЯЯХБЮ ХКХ ЯХЛБНКЮ ЯРПНЙХ. гМЮВЕМХЕ ОН СЛНКВЮМХЧ - 0.
$]
$PERL_VERSION
яРПНЙЮ - ЯННАЫЕМХЕ БЕПЯХХ Perl. оЕВЮРЮЕРЯЪ ОН ЙНЛЮМДЕ perl -v оПХЛЕМЪЕРЯЪ Б ОПНЦПЮЛЛЕ ДКЪ НОПЕДЕКЕМХЪ ПЮАНВЕИ БЕПЯХХ Perl. б ВХЯКНБНЛ ЙНМРЕЙЯРЕ ЩРН МНЛЕП БЕПЯХХ ОКЧЯ МНЛЕП ЛНДХТХЙЮЖХХ / 1000.
$^D
$DEBUGGING
рЕЙСЫЕЕ ГМЮВЕМХЕ ЙКЧВЮ НРКЮДЙХ '-D'.
$^F
$SYSTEM_FD_MAX
мНЛЕП ЛЮЙЯХЛЮКЭМНЦН ЯХЯРЕЛМНЦН НОХЯЮРЕКЪ ТЮИКНБ (system file descriptor). нАШВМН ЩРН 2.
$^I
$INPLACE_EDIT
рЕЙСЫЕЕ ГМЮВЕМХЕ inplace-edit БНГЛНФМНЯРХ. дКЪ НРЙКЧВЕМХЪ ХЯОНКЭГСИРЕ undef.
$^P
$PERLDB
бМСРПЕММХИ ТКЮЦ НРКЮДЙХ. оПХЛЕМЪЕРЯЪ ДКЪ РНЦН, ВРНАШ НРКЮДВХЙ МЕ НРЯКЕФХБЮК ЯЮЛНЦН ЯЕАЪ.
$^T
$BASETIME
бПЕЛЪ Б ЯЕЙСМДЮУ Я МЮВЮКЮ 1970 ЦНДЮ ЯРЮПРЮ РЕЙСЫЕИ ОПНЦПЮЛЛШ.
$^W
$WARNING
гМЮВЕМХЕ ТКЮЦЮ '-w'. true -ЕЯКХ БЙКЧВЕМН Х false - БШЙКЧВЕМН.
$^X
$EXECUTABLE_NAME
йНЛЮМДЮ ГЮОСЯЙЮ 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' - ХЦМНПХПНБЮРЭ ДЮММШИ ЯХЦМЮК.
[мЮГЮД] [яНДЕПФЮМХЕ] [бОЕПЕД]