пСЙНБНДЯРБН ОНКЭГНБЮРЕКЪ ДКЪ GNU Awk
оПЕДХЯКНБХЕщРЮ ЙМХЦЮ МЮСВХР БЮЯ ЪГШЙС AWK Х РНЛС, ЙЮЙ ХЛ ЩТТЕЙРХБМН ОНКЭГНБЮРЭЯЪ. бШ ДНКФМШ ОПЕДБЮПХРЕКЭМН АШРЭ ГМЮЙНЛШ Я АЮГХЯМШЛХ ЯХЯРЕЛМШЛХ ЙНЛЮМДЮЛХ, Я РЮЙХЛХ ЙЮЙ cat Х ls,1, Х Я НЯМНБМШЛХ ЯПЕДЯРБЮЛХ НАНКНВЙХ, РЮЙХЛХ ЙЮЙ ОЕПЕМЮОПЮБКЕМХЕ Input/Output (I/O) Х ЙНМБЕИЕПЮЛХ (pipes). пЕЮКХГЮЖХХ ЪГШЙЮ awk ХЛЕЧРЯЪ ДКЪ ЛМНЦХУ ПЮГКХВМШУ НЙПСФЕМХИ. щРЮ ЙМХЦЮ, НОХЯШБЮЪ НАЫХЕ ВЕПРШ ЪГШЙЮ awk, НОХЯШБЮЕР РЮЙФЕ ЙНМЙПЕРМСЧ ПЕЮКХГЮЖХЧ awk, МЮГШБЮЕЛСЧ Gawk (ВРН ЪБКЪЕРЯЪ ЯНЙПЮЫЕМХЕЛ ДКЪ "GNU Awk"). Gawk ХЯОНКМЪЕРЯЪ МЮ ЛМНЦХУ ЯХЯРЕЛЮУ Unix, НР 80386 PC-based ЙНЛОЭЧРЕПНБ ДН large scale systems, РЮЙХУ ЙЮЙ Crays. Gawk ОЕПЕМЕЯЕМ РЮЙФЕ МЮ MS-DOS Х OS/2 PC's, МЮ Atari Х Amiga micro-computers, Х МЮ VMS. хЯРНПХЪ awk Х gawkмЮГБЮМХЕ awk ОПНХГНЬКН НР ХМХЖХЮКНБ ЕЦj ЯНГДЮРЕКЕИ: Alfred V. Aho, Peter J. Weinberger Х Brian W. Kernighan. мЮВЮКЭМЮЪ БЕПЯХЪ АШКЮ НОХЯЮМЮ Б 1977Ц. Б AT&T Bell Laboratories. б 1985 АШКЮ ЯНГДЮМЮ АНКЕЕ ЛНЫМЮЪ БЕПЯХЪ ЪГШЙЮ, ББНДЪЫЮЪ НОПЕДЕКЪЕЛШЕ ОНКЭГНБЮРЕКЕЛ ТСМЙЖХХ, ЙПЮРМШЕ БУНДМШЕ ОНРНЙХ Х БШВХЯКЪЕЛШЕ ПЕЦСКЪПМШЕ БШПЮФЕМХЪ. щРН МНБЮЪ БЕПЯХЪ ЯРЮКЮ ДНЯРСОМНИ Б Unix System V Release 3.1. б БЕПЯХХ System V Release 4 АШКХ ДНАЮБКЕМШ МЕЙНРНПШЕ МНБШЕ ЯБНИЯРБЮ Х СРНВМЕМШ ДЕИЯРБХЪ Б "РЕЛМШУ СЦКЮУ" ЪГШЙЮ. яОЕЖХТХЙЮЖХХ ДКЪ awk Б POSIX Command Language Х Utilities standard ЕЫЕ АНКЭЬЕ ОПНЪЯМХКХ ЪГШЙ Я ОНЛНЫЭЧ НАПЮРМНИ ЯБЪГХ Я ЯНГДЮРЕКЪЛХ gawk Х Я ОЕПБНМЮВЮКЭМШЛХ ЮБРНПЮЛХХ awk ХГ Bell Labs. пЕЮКХГЮЖХЧ GNU, Р.Е. gawk, МЮОХЯЮКХ Б 1986Ц Paul Rubin Х Jay Fenlason, Я ОНЛНЫЭЧ НР Richard Stallman. John Woods РЮЙФЕ ДНАЮБХК ВЮЯРХ ЙНДЮ. б 1988 Х and 1989ЦЦ. David Trueman, Я ОНЛНЫЭЧ Arnold Robbins, ОНКМНЯРЭЧ ОЕПЕПЮАНРЮК gawk ДКЪ ЯНБЛЕЯРХЛНЯРХ Я НАМНБКЕММШЛ awk. рЕЙСЫЕЕ ПЮГБХРХЕ ЪГШЙЮ ТНЙСЯХПСЕРЯЪ МЮ ХЯОПЮБКЕМХХ НЬХАНЙ, СКСВЬЕМХХ ОПНХГБНДХРЕКЭМНЯРХ, ЯРЮМДЮПРХГЮЖХХ Х ХМНЦДЮ МЮ ДНАЮБКЕМХХ МНБШУ ВЕПР. оПНЕЙР GNU Х ЩРЮ ЙМХЦЮFree Software Foundation (FSF) ЕЯРЭ АЕЯОПХАШКЭМЮЪ НПЦЮМХГЮЖХЪ ДКЪ ОПНХГБНДЯРБЮ Х ПЮЯОПНЯРПЮМЕМХЪ ЯБНАНДМН ПЮЯОПНЯРПЮМЪЕЛНЦН ОПНЦПЮЛЛМНЦН НАЕЯОЕВЕМХЪ. 1 щРХ ЙНЛЮМДШ ДНЯРСОМШ МЮ ЯХЯРЕЛЮУ, ЯННРБЕРЯРБСЧЫХУ POSIX, РЮЙ ФЕ ЙЮЙ МЮ РПЮДХЖХНММШУ, НЯМНБЮММШУ МЮ Unix ЯХЯРЕЛЮУ. еЯКХ БШ ОНКЭГСЕРЕЯЭ ЙЮЙНИ-МХАСДЭ ДПСЦНИ НОЕПЮЖХНММНИ ЯХЯРЕЛНИ, БЮЛ БЯЕ ПЮБМН МЕНАУНДХЛН ГМЮЙНЛЯРБН Я ХДЕЪЛХ ОЕПЕМЮОПЮБКЕМХЪ I/O Х Я ЙНМБЕИЕПЮЛХ. 2 щТТЕЙРХБМНЕ ОПНЦПЮЛЛХПНБЮМХЕ МЮ AWK АШКН НЯМНБЮМН пХВЮПДНЛ л. яРЮКЛЮМНЛ, ЮБРНПНЛ НПХЦХМЮКЭМНЦН ПЕДЮЙРНПЮ Emacs editor. GNU Emacs ЕЯРЭ МЮХАНКЕЕ ЬХПНЙН ХЯОНКЭГСЕЛЮЪ Б МЮЯРНЪЫЕЕ БПЕЛЪ БЕПЯХЪ Emacs. оПНЕЙР GNU ОПЕДЯРЮБКЪЕР МЕ ОПЕЙПЮЫЮЧЫХЕЯЪ СЯХКХЪ ЯН ЯРНПНМШ Free Software Foundation ДКЪ ЯНГДЮМХЪ ОНКМНЦН, ЯБНАНДМН ПЮЯОПНЯРПЮМЪЕЛНЦН, ЯННРБЕРЯРБСЧЫЕЦН POSIX БШВХЯКХРЕКЭМНЦН НЙПСФЕМХЪ. (GNU НГМЮВЮЕР "GNU's not Unix".) FSF ХЯОНКЭГСЕР "GNU General Public License" (ХКХ GPL), ВРНАШ НАЕЯОЕВХРЭ ЙНМЕВМНЛС ОНКЭГНБЮРЕКЧ ОНЯРНЪММШИ ДНЯРСО Й ХЯУНДМНЛС ЙНДС ХУ ОПНЦПЮЛЛМНЦН НАЕЯОЕВЕМХЪ. йНОХЪ GPL БЙКЧВЕМЮ ДКЪ БЮЬХУ ЯЯШКНЙ (ЯЛ. [GNU GENERAL PUBLIC LICENSE], page 309). GPL ОПХКЮЦЮЕРЯЪ Й ХЯУНДМНЛС ЙНДС МЮ ЪГШЙЕ яХ ДКЪ gawk. нАНКНВЙЮ, ПЕДЮЙРНП (Emacs), КЕЦЙН ОЕПЕМНЯХЛШЕ НОРХЛХГХПСЧЫХЕ C, C++ Х Objective C-ЙНЛОХКЪРНПШ, ЯХЛБНКЭМШИ НРКЮДВХЙ Х ДЧФХМШ АНКЭЬХУ Х ЛЮКШУ БЯОНЛНЦЮРЕКЭМШУ ЯПЕДЯРБ (РЮЙХУ ЙЮЙ gawk), ХЛЕЧРЯЪ Х ЯБНАНДМН ДНЯРСОМШ. вРН ЙЮЯЮЕРЯЪ МЮЯРНЪЫЕЦН ДНЙСЛЕМРЮ (МЮВЮКН 1997Ц.), РН ЪДПН НОЕПЮЖХНММНИ ЯХЯРЕЛШ GNU ( HURD) СФЕ БШОСЫЕМН, МН МЮУНДХРЯЪ ЕЫЕ Б МЮВЮКЭМНИ ЯРЮДХХ ПЮГБХРХЪ. оНЙЮ НОЕПЮЖХНММЮЪ ЯХЯРЕЛЮ GNU МЕ АСДЕР ОНКМНЯРЭЧ ДНПЮАНРЮМЮ, ОПЕДОНКЮЦЮЕРЯЪ, ВРН БШ ХЯОНКЭГСЕРЕ Linux, ЯБНАНДМН ПЮЯОПНЯРПЮМЪЕЛСЧ Unix-ОНДНАМСЧ НОЕПЮЖХНММСЧ ЯХЯРЕЛС ДКЪ 80386, DEC Alpha, Sun SPARC Х ДПСЦХУ ЯХЯРЕЛ. хЛЕЕРЯЪ ЛМНЦН ЙМХЦ ОН Linux. нДМЮ ЯБНАНДМН ПЮЯОПНЯРПЮМЪЕЛЮЪ ЕЯРЭ Linux Installation and Getting Started, ЮБРНП Matt Welsh. лМНЦХЕ ХЯРНВМХЙХ Linux ЯБНАНДМН ДНЯРСОМШ, ВЮЯРН Б ЙНЛОЭЧРЕПМНИ ОЮЛЪРХ ХКХ МЮ CD-ROM Я ЙМХЦЮЛХ ОН Linux. (хЛЕЧРЯЪ РПХ ДПСЦХЕ ЯБНАНДМН ДНЯРСОМШЕ Unix-ОНДНАМШЕ НОЕПЮЖХНММШЕ ЯХЯРЕЛШ ДКЪ 80386 Х ДПСЦХУ ЯХЯРЕЛ, NetBSD, FreeBSD Х OpenBSD. бЯЕ НЯМНБЮМШ МЮ 4.4-Lite Berkeley Software Distribution, Х НМХ ХЯОНКЭГСЧР ОНЯКЕДМХЕ БЕПЯХХ gawk ДКЪ ЯБНХУ БЕПЯХИ awk.) щРЮ ЙМХЦЮ, ЙНРНПСЧ БШ ВХРЮЕРЕ, РЕОЕПЭ ТЮЙРХВЕЯЙХ ЯБНАНДМЮ. хМТНПЛЮЖХЪ ХГ МЕЕ ЯБНАНДМН ДНЯРСОМЮ БЯЕЛ, ЛЮЬХММН-ВХРЮЕЛШИ ХЯУНДМШИ ЙНД ЙМХЦХ ОПХУНДХР Я gawk, Х ЙЮФДШИ ЛНФЕР БГЪРЭ ЩРС ЙМХЦС МЮ ЙНОХПНБЮКЭМСЧ ЛЮЬХМС Х ЯДЕКЮРЭ ЯРНКЭЙН ЙНОХИ, ЯЙНКЭЙН МСФМН. (мЕ ГЮАСДЭРЕ ОПНБЕПХРЭ ПЮГПЕЬЕМХЕ МЮ ЙНОХХ МЮ ЯРПЮМХЖЕ Copyright.) еЯКХ ОКЮРХРЕ ДЕМЭЦХ ГЮ ЩРС ЙМХЦС, РН БШ ОКЮРХРЕ ТЮЙРХВЕЯЙХ РНКЭЙН ГЮ УНПНЬСЧ ОЕВЮРЭ Х НАКНФЙС Х ХГДЮРЕКЧ ГЮ ЕЦН ПЮАНРС. лШ ОПХКЮЦЮЕЛ СЯХКХЪ, ВРНАШ ЯДЕКЮРЭ ЩРХ ОКЮРШ ПЮГСЛМШЛХ. аНКЭЬХМЯРБН ЙКХЕМРНБ ОПЕДОНВРЕР ХЛЕРЭ ЙСОКЕММСЧ ЙМХЦС АНКЕЕ ВЕЛ Б 330 ЯРПЮМХЖ ТНРНЙНОХПНБЮММНЦН РЕЙЯРЮ ОЮВЙЕ ПЮЯЯШОЮЧЫХУЯЪ КХЯРЙНБ (МЕ ЦНБНПЪ СФЕ Н БПЕЛЕМХ Х РПСДЕ, ГЮРПЮВЕММШЛХ МЮ ЙНОХПНБЮМХЕ). рН ФЕ ЯЮЛНЕ БЕПМН ДКЪ ОНКСВЕМХЪ ЙМХЦХ ХГ ЛЮЬХММН-ВХРЮЕЛНЦН ХЯРНВМХЙЮ; СДЕПФЮММЮЪ ЖЕМЮ АСДЕР РНКЭЙН МЕЛМНЦН АНКЭЬЕ ЖЕМШ ГЮ ОНЯРПЮМХВМСЧ ОЕВЮРЭ МЮ КЮГЕПМНЛ ОПХМРЕПЕ. яЮЛЮ ЩРН ЙМХЦЮ ОПНЬКЮ ВЕПЕГ МЕЯЙНКЭЙН ОПЕДБЮПХРЕКЭМШУ ХГДЮМХИ. ъ МЮВЮК ПЮАНРЮРЭ МЮД ОПЕДБЮПХРЕКЭМШЛ НРВЕРНЛ ПСЙНБНДЯРБЮ ОН GAWK Manual, ЯНЯРЮБКЕММШЛ Diane Close, Paul Rubin Х Richard Stallman Б ЙНМЖЕ 1988Ц. нМ ЯНДЕПФЮК ОПХЛЕПМН 90 ЯРПЮМХЖ Х ЙНПНРЙН НОХЯШБЮК ХЯУНДМСЧ, "ЯРЮПСЧ" БЕПЯХЧ awk. оНЯКЕ ЯСЫЕЯРБЕММНЦН ОЕПЕЯЛНРПЮ ОЕПБНИ БЕПЯХЕИ ПСЙНБНДЯРБЮ ОН GAWK ЯРЮКН ХГДЮМХЕ 0.11 Beta Б НЙРЪАПЕ 1989Ц. яКЕДСЧЫЕЕ ХГДЮМХЕ 0.13 БШЬКН Б ДЕЙЮАПЕ 1991Ц. й МЕЛС David Trueman, Pat Rankin Х Michal Jaegermann ДНАЮБХКХ МЕЯЙНКЭЙН ЦКЮБ. щРН МНБНЕ ХГДЮМХЕ АШКН НОСАКХЙНБЮМН Б FSF Б БХДЕ ЙМХЦХ Б МЮВЮКЕ 1992Ц. оНЯКЕ ЩРНЦ АШКН МЕЯЙНКЭЙН МЕАНКЭЬХУ ПЕБХГХИ, ГЮРЕЛ ХГДЮМХЕ 0.14, БШЬЕДЬЕЕ Б мНЪАПЕ 1992, АШКН НОСАКХЙНБЮМН Б FSF Б ъМБЮПЕ 1993Ц, Х ХГДЮМХЕ 0.16 БШЬКН Б юБЦСЯРЕ 1993Ц. хГДЮМХЕ 1.0 ОН щТТЕЙРХБМНЛС AWK-ОПНЦПЮЛЛХПНБЮМХЧ ОПЕДЯРЮБКЪЕР ЯСЫЕЯРБЕММН ОЕПЕПЮАНРЮММНЕ ПСЙНБНДЯРБН ОН GAWK Manual, Я ЛМНЦХЛХ ДНОНКМХРЕКЭМШЛХ ЛЮРЕПХЮКЮЛХ. FSF Х Ъ ЯНЦКЮЯХКХЯЭ, ВРН РЕОЕПЭ Ъ ЪБКЪЧЯЭ ЦКЮБМШЛ ЮБРНПНЛ. ъ РЮЙФЕ ВСБЯРБСЧ, ВРН НМН МСФДЮЕРЯЪ Б АНКЕЕ ЯНДЕПФЮРЕКЭМНЛ МЮГБЮМХХ. щТТЕЙРХБМНЕ AWK- ОПНЦПЮЛЛХПНБЮМХЕ, АЕГ ЯНЛМЕМХЪ, АСДЕР ОПНДНКФЮРЭ ПЮГБХБЮРЭЯЪ. щКЕЙРПНММЮЪ БЕПЯХЪ ОПХУНДХР Я ПЮЯОПНЯРПЮМЕМХЕЛ gawk НР FSF. еЯКХ БШ НАМЮПСФХРЕ НЬХАЙС Б ЩРНИ ЙМХЦЕ, ОНФЮКСИЯРЮ ЯННАЫХРЕ Н МЕИ! яЛ. ПЮГДЕК B.7 [нАМЮПСФЕММШЕ ОПНАКЕЛШ Х НЬХАЙХ], ЯРП. 292. яННРБЕРЯРБСЧЫСЧ ХМТНПЛЮЖХЧ ОЕПЕДЮБЮИРЕ ЩКЕЙРПНММН ХКХ ОХЬХРЕ ДКЪ ЛЕМЪ ОН ЮДПЕЯС FSF. аКЮЦНДЮПМНЯРХI would like to acknowledge Richard M. Stallman, for his vision of a better world, and for his courage in founding the FSF and starting the GNU project. The initial draft of The GAWK Manual had the following acknowledgements: Many people need to be thanked for their assistance in producing this manual. Jay Fenlason contributed many ideas and sample programs. Richard Mlynarik and Robert Chassell gave helpful comments on drafts of this manual. The paper A Supplemental Document for awk by John W. Pierce of the Chemistry Department at UC San Diego, pinpointed several issues relevant both to awk implementation and to this manual, that would otherwise have escaped us. The following people provided many helpful comments on Edition 0.13 of The GAWK Manual: Rick Adams, Michael Brennan, Rich Burridge, Diane Close, Christopher ("Topher") Eliot, Michael Lijewski, Pat Rankin, Miriam Robbins, and Michal Jaegermann. The following people provided many helpful comments for Edition 1.0 of Effective AWK Programming: Karl Berry, Michael Brennan, Darrel Hankerson, Michal Jaegermann, Michael Lijewski, and Miriam Robbins. Pat Rankin, Michal Jaegermann, Darrel Hankerson and Scott Deifik updated their respective sections for Edition 1.0. Robert J. Chassell provided much valuable advice on the use of Texinfo. He also deserves special thanks for convincing me not to title this book How 4 Effective AWK Programming To Gawk Politely. Karl Berry helped significantly with the TEX part of Texinfo. David Trueman deserves special credit; he has done a yeoman job of evolving gawk so that it performs well, and without bugs. Although he is no longer involved with gawk, working with him on this project was a significant pleasure. Scott Deifik, Darrel Hankerson, Kai Uwe Rommel, Pat Rankin, and Michal Jaegermann (in no particular order) are long time members of the gawk "crack portability team." Without their hard work and help, gawk would not be nearly the fine program it is today. It has been and continues to be a pleasure working with this team of fine people. Jeffrey Friedl provided invaluable help in tracking down a number of last minute problems with regular expressions in gawk 3.0. David and I would like to thank Brian Kernighan of Bell Labs for invaluable assistance during the testing and debugging of gawk, and for help in clarifying numerous points about the language. We could not have done nearly as good a job on either gawk or its documentation without his help. I would like to thank Marshall and Elaine Hartholz of Seattle, and Dr. Bert and Rita Schreiber of Detroit for large amounts of quiet vacation time in their homes, which allowed me to make significant progress on this book and on gawk itself. Phil Hughes of SSC contributed in a very important way by loaning me his laptop Linux system, not once, but twice, allowing me to do a lot of work while away from home. Finally, I must thank my wonderful wife, Miriam, for her patience through the many versions of this project, for her proof-reading, and for sharing me with the computer. I would like to thank my parents for their love, and for the grace with which they raised and educated me. I also must acknowledge my gratitude to G-d, for the many opportunities He has sent my way, as well as for the gifts He has given me with which to take advantage of those opportunities. Arnold Robbins Atlanta, Georgia February, 1997 |
<<< | нЦКЮБКЕМХЕ | яРПЮМХЖШ: 0 1 | >>> |