diff options
Diffstat (limited to 'doc/gawk.info')
-rw-r--r-- | doc/gawk.info | 1086 |
1 files changed, 554 insertions, 532 deletions
diff --git a/doc/gawk.info b/doc/gawk.info index e45050b2..91962482 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -10,8 +10,8 @@ START-INFO-DIR-ENTRY END-INFO-DIR-ENTRY Copyright (C) 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, 2011, 2012, 2013 Free -Software Foundation, Inc. +2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, 2011, 2012, 2013, 2014 +Free Software Foundation, Inc. This is Edition 4.1 of `GAWK: Effective AWK Programming: A User's @@ -42,8 +42,8 @@ This file documents `awk', a program that you can use to select particular records in a file and perform operations upon them. Copyright (C) 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, 2011, 2012, 2013 Free -Software Foundation, Inc. +2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, 2011, 2012, 2013, 2014 +Free Software Foundation, Inc. This is Edition 4.1 of `GAWK: Effective AWK Programming: A User's @@ -193,6 +193,7 @@ texts being (a) (see below), and with the Back-Cover Texts being (b) field. * Command Line Field Separator:: Setting `FS' from the command-line. +* Full Line Fields:: Making the full line be a single field. * Field Splitting Summary:: Some final points and a summary table. * Constant Size:: Reading constant width data. * Splitting By Content:: Defining Fields By Content @@ -4381,6 +4382,7 @@ File: gawk.info, Node: Field Separators, Next: Constant Size, Prev: Changing * Regexp Field Splitting:: Using regexps as the field separator. * Single Character Fields:: Making each character a separate field. * Command Line Field Separator:: Setting `FS' from the command-line. +* Full Line Fields:: Making the full line be a single field. * Field Splitting Summary:: Some final points and a summary table. The "field separator", which is either a single character or a @@ -4562,7 +4564,7 @@ Options::), if `FS' is the null string, then `gawk' also behaves this way. -File: gawk.info, Node: Command Line Field Separator, Next: Field Splitting Summary, Prev: Single Character Fields, Up: Field Separators +File: gawk.info, Node: Command Line Field Separator, Next: Full Line Fields, Prev: Single Character Fields, Up: Field Separators 4.5.4 Setting `FS' from the Command Line ---------------------------------------- @@ -4649,9 +4651,27 @@ the entries for users who have no password: awk -F: '$2 == ""' /etc/passwd -File: gawk.info, Node: Field Splitting Summary, Prev: Command Line Field Separator, Up: Field Separators +File: gawk.info, Node: Full Line Fields, Next: Field Splitting Summary, Prev: Command Line Field Separator, Up: Field Separators -4.5.5 Field-Splitting Summary +4.5.5 Making The Full Line Be A Single Field +-------------------------------------------- + +Occasionally, it's useful to treat the whole input line as a single +field. This can be done easily and portably simply by setting `FS' to +`"\n"' (a newline).(1) + + awk -F'\n' 'PROGRAM' FILES ... + +When you do this, `$1' is the same as `$0'. + + ---------- Footnotes ---------- + + (1) Thanks to Andrew Schorr for this tip. + + +File: gawk.info, Node: Field Splitting Summary, Prev: Full Line Fields, Up: Field Separators + +4.5.6 Field-Splitting Summary ----------------------------- It is important to remember that when you assign a string constant as @@ -29908,7 +29928,7 @@ Index * Beebe, Nelson: Acknowledgments. (line 60) * BEGIN pattern <1>: Profiling. (line 62) * BEGIN pattern <2>: BEGIN/END. (line 6) -* BEGIN pattern <3>: Field Separators. (line 44) +* BEGIN pattern <3>: Field Separators. (line 45) * BEGIN pattern: Records. (line 29) * BEGIN pattern, assert() user-defined function and: Assert Function. (line 83) @@ -30567,8 +30587,8 @@ Index * field operator $: Fields. (line 19) * field operators, dollar sign as: Fields. (line 19) * field separators <1>: User-modified. (line 56) -* field separators: Field Separators. (line 14) -* field separators, choice of: Field Separators. (line 50) +* field separators: Field Separators. (line 15) +* field separators, choice of: Field Separators. (line 51) * field separators, FIELDWIDTHS variable and: User-modified. (line 35) * field separators, FPAT variable and: User-modified. (line 45) * field separators, in multiline records: Multiple Line. (line 41) @@ -30579,7 +30599,7 @@ Index * field separators, POSIX and: Fields. (line 6) * field separators, regular expressions as <1>: Regexp Field Splitting. (line 6) -* field separators, regular expressions as: Field Separators. (line 50) +* field separators, regular expressions as: Field Separators. (line 51) * field separators, See Also OFS: Changing Fields. (line 64) * field separators, spaces as: Cut Program. (line 109) * fields <1>: Basic High Level. (line 73) @@ -30592,7 +30612,7 @@ Index * fields, number of: Fields. (line 33) * fields, numbers: Nonconstant Fields. (line 6) * fields, printing: Print Examples. (line 21) -* fields, separating: Field Separators. (line 14) +* fields, separating: Field Separators. (line 15) * fields, single-character: Single Character Fields. (line 6) * FIELDWIDTHS variable <1>: User-modified. (line 35) @@ -30701,12 +30721,12 @@ Index * Free Software Foundation (FSF): Manual History. (line 6) * FreeBSD: Glossary. (line 624) * FS variable <1>: User-modified. (line 56) -* FS variable: Field Separators. (line 14) +* FS variable: Field Separators. (line 15) * FS variable, --field-separator option and: Options. (line 21) * FS variable, as null string: Single Character Fields. (line 20) * FS variable, as TAB character: Options. (line 259) -* FS variable, changing value of: Field Separators. (line 34) +* FS variable, changing value of: Field Separators. (line 35) * FS variable, running awk programs and: Cut Program. (line 68) * FS variable, setting from command line: Command Line Field Separator. (line 6) @@ -31643,7 +31663,7 @@ Index * regexp constants, vs. string constants: Computed Regexps. (line 38) * regexp, See regular expressions: Regexp. (line 6) * regular expressions: Regexp. (line 6) -* regular expressions as field separators: Field Separators. (line 50) +* regular expressions as field separators: Field Separators. (line 51) * regular expressions, anchors in: Regexp Operators. (line 22) * regular expressions, as field separators: Regexp Field Splitting. (line 6) @@ -32013,7 +32033,7 @@ Index * troubleshooting, --non-decimal-data option: Options. (line 207) * troubleshooting, == operator: Comparison Operators. (line 37) -* troubleshooting, awk uses FS not IFS: Field Separators. (line 29) +* troubleshooting, awk uses FS not IFS: Field Separators. (line 30) * troubleshooting, backslash before nonspecial character: Escape Sequences. (line 112) * troubleshooting, division: Arithmetic Ops. (line 44) @@ -32207,521 +32227,523 @@ Index Tag Table: -Node: Top1360 -Node: Foreword40460 -Node: Preface44805 -Ref: Preface-Footnote-147858 -Ref: Preface-Footnote-247954 -Node: History48186 -Node: Names50560 -Ref: Names-Footnote-152037 -Node: This Manual52109 -Ref: This Manual-Footnote-157883 -Node: Conventions57983 -Node: Manual History60139 -Ref: Manual History-Footnote-163587 -Ref: Manual History-Footnote-263628 -Node: How To Contribute63702 -Node: Acknowledgments64846 -Node: Getting Started69055 -Node: Running gawk71434 -Node: One-shot72620 -Node: Read Terminal73845 -Ref: Read Terminal-Footnote-175495 -Ref: Read Terminal-Footnote-275771 -Node: Long75942 -Node: Executable Scripts77318 -Ref: Executable Scripts-Footnote-179151 -Ref: Executable Scripts-Footnote-279253 -Node: Comments79800 -Node: Quoting82267 -Node: DOS Quoting86890 -Node: Sample Data Files87565 -Node: Very Simple90609 -Node: Two Rules95208 -Node: More Complex97355 -Ref: More Complex-Footnote-1100285 -Node: Statements/Lines100370 -Ref: Statements/Lines-Footnote-1104832 -Node: Other Features105097 -Node: When106025 -Node: Invoking Gawk108172 -Node: Command Line109633 -Node: Options110416 -Ref: Options-Footnote-1125808 -Node: Other Arguments125833 -Node: Naming Standard Input128491 -Node: Environment Variables129585 -Node: AWKPATH Variable130143 -Ref: AWKPATH Variable-Footnote-1132901 -Node: AWKLIBPATH Variable133161 -Node: Other Environment Variables133879 -Node: Exit Status136842 -Node: Include Files137517 -Node: Loading Shared Libraries141086 -Node: Obsolete142450 -Node: Undocumented143147 -Node: Regexp143389 -Node: Regexp Usage144778 -Node: Escape Sequences146804 -Node: Regexp Operators152473 -Ref: Regexp Operators-Footnote-1159853 -Ref: Regexp Operators-Footnote-2160000 -Node: Bracket Expressions160098 -Ref: table-char-classes161988 -Node: GNU Regexp Operators164511 -Node: Case-sensitivity168234 -Ref: Case-sensitivity-Footnote-1171202 -Ref: Case-sensitivity-Footnote-2171437 -Node: Leftmost Longest171545 -Node: Computed Regexps172746 -Node: Reading Files176083 -Node: Records178085 -Ref: Records-Footnote-1186974 -Node: Fields187011 -Ref: Fields-Footnote-1190044 -Node: Nonconstant Fields190130 -Node: Changing Fields192332 -Node: Field Separators198291 -Node: Default Field Splitting200920 -Node: Regexp Field Splitting202037 -Node: Single Character Fields205379 -Node: Command Line Field Separator206438 -Node: Field Splitting Summary209879 -Ref: Field Splitting Summary-Footnote-1212990 -Node: Constant Size213091 -Node: Splitting By Content217675 -Ref: Splitting By Content-Footnote-1221401 -Node: Multiple Line221441 -Ref: Multiple Line-Footnote-1227288 -Node: Getline227467 -Node: Plain Getline229683 -Node: Getline/Variable231778 -Node: Getline/File232925 -Node: Getline/Variable/File234266 -Ref: Getline/Variable/File-Footnote-1235865 -Node: Getline/Pipe235952 -Node: Getline/Variable/Pipe238651 -Node: Getline/Coprocess239758 -Node: Getline/Variable/Coprocess241010 -Node: Getline Notes241747 -Node: Getline Summary244534 -Ref: table-getline-variants244942 -Node: Read Timeout245854 -Ref: Read Timeout-Footnote-1249595 -Node: Command line directories249652 -Node: Printing250282 -Node: Print251913 -Node: Print Examples253250 -Node: Output Separators256034 -Node: OFMT257794 -Node: Printf259152 -Node: Basic Printf260058 -Node: Control Letters261597 -Node: Format Modifiers265409 -Node: Printf Examples271418 -Node: Redirection274133 -Node: Special Files281098 -Node: Special FD281631 -Ref: Special FD-Footnote-1285256 -Node: Special Network285330 -Node: Special Caveats286180 -Node: Close Files And Pipes286976 -Ref: Close Files And Pipes-Footnote-1293959 -Ref: Close Files And Pipes-Footnote-2294107 -Node: Expressions294257 -Node: Values295389 -Node: Constants296065 -Node: Scalar Constants296745 -Ref: Scalar Constants-Footnote-1297604 -Node: Nondecimal-numbers297786 -Node: Regexp Constants300786 -Node: Using Constant Regexps301261 -Node: Variables304316 -Node: Using Variables304971 -Node: Assignment Options306695 -Node: Conversion308567 -Ref: table-locale-affects314068 -Ref: Conversion-Footnote-1314692 -Node: All Operators314801 -Node: Arithmetic Ops315431 -Node: Concatenation317936 -Ref: Concatenation-Footnote-1320728 -Node: Assignment Ops320848 -Ref: table-assign-ops325836 -Node: Increment Ops327167 -Node: Truth Values and Conditions330601 -Node: Truth Values331684 -Node: Typing and Comparison332733 -Node: Variable Typing333526 -Ref: Variable Typing-Footnote-1337423 -Node: Comparison Operators337545 -Ref: table-relational-ops337955 -Node: POSIX String Comparison341504 -Ref: POSIX String Comparison-Footnote-1342460 -Node: Boolean Ops342598 -Ref: Boolean Ops-Footnote-1346676 -Node: Conditional Exp346767 -Node: Function Calls348499 -Node: Precedence352093 -Node: Locales355762 -Node: Patterns and Actions356851 -Node: Pattern Overview357905 -Node: Regexp Patterns359574 -Node: Expression Patterns360117 -Node: Ranges363802 -Node: BEGIN/END366768 -Node: Using BEGIN/END367530 -Ref: Using BEGIN/END-Footnote-1370261 -Node: I/O And BEGIN/END370367 -Node: BEGINFILE/ENDFILE372649 -Node: Empty375563 -Node: Using Shell Variables375879 -Node: Action Overview378164 -Node: Statements380521 -Node: If Statement382375 -Node: While Statement383874 -Node: Do Statement385918 -Node: For Statement387074 -Node: Switch Statement390226 -Node: Break Statement392323 -Node: Continue Statement394313 -Node: Next Statement396106 -Node: Nextfile Statement398496 -Node: Exit Statement401139 -Node: Built-in Variables403555 -Node: User-modified404650 -Ref: User-modified-Footnote-1413008 -Node: Auto-set413070 -Ref: Auto-set-Footnote-1426540 -Ref: Auto-set-Footnote-2426745 -Node: ARGC and ARGV426801 -Node: Arrays430652 -Node: Array Basics432157 -Node: Array Intro432983 -Node: Reference to Elements437300 -Node: Assigning Elements439570 -Node: Array Example440061 -Node: Scanning an Array441793 -Node: Controlling Scanning444107 -Ref: Controlling Scanning-Footnote-1449194 -Node: Delete449510 -Ref: Delete-Footnote-1452275 -Node: Numeric Array Subscripts452332 -Node: Uninitialized Subscripts454515 -Node: Multidimensional456142 -Node: Multiscanning459234 -Node: Arrays of Arrays460823 -Node: Functions465463 -Node: Built-in466282 -Node: Calling Built-in467360 -Node: Numeric Functions469348 -Ref: Numeric Functions-Footnote-1473180 -Ref: Numeric Functions-Footnote-2473537 -Ref: Numeric Functions-Footnote-3473585 -Node: String Functions473854 -Ref: String Functions-Footnote-1496774 -Ref: String Functions-Footnote-2496903 -Ref: String Functions-Footnote-3497151 -Node: Gory Details497238 -Ref: table-sub-escapes498917 -Ref: table-sub-posix-92500271 -Ref: table-sub-proposed501622 -Ref: table-posix-sub502976 -Ref: table-gensub-escapes504521 -Ref: Gory Details-Footnote-1505697 -Ref: Gory Details-Footnote-2505748 -Node: I/O Functions505899 -Ref: I/O Functions-Footnote-1512884 -Node: Time Functions513031 -Ref: Time Functions-Footnote-1523964 -Ref: Time Functions-Footnote-2524032 -Ref: Time Functions-Footnote-3524190 -Ref: Time Functions-Footnote-4524301 -Ref: Time Functions-Footnote-5524413 -Ref: Time Functions-Footnote-6524640 -Node: Bitwise Functions524906 -Ref: table-bitwise-ops525468 -Ref: Bitwise Functions-Footnote-1529689 -Node: Type Functions529873 -Node: I18N Functions531024 -Node: User-defined532651 -Node: Definition Syntax533455 -Ref: Definition Syntax-Footnote-1538365 -Node: Function Example538434 -Node: Function Caveats541028 -Node: Calling A Function541449 -Node: Variable Scope542564 -Node: Pass By Value/Reference545527 -Node: Return Statement549035 -Node: Dynamic Typing552016 -Node: Indirect Calls552947 -Node: Library Functions562632 -Ref: Library Functions-Footnote-1566145 -Ref: Library Functions-Footnote-2566288 -Node: Library Names566459 -Ref: Library Names-Footnote-1569930 -Ref: Library Names-Footnote-2570150 -Node: General Functions570236 -Node: Strtonum Function571264 -Node: Assert Function574194 -Node: Round Function577520 -Node: Cliff Random Function579063 -Node: Ordinal Functions580079 -Ref: Ordinal Functions-Footnote-1583149 -Ref: Ordinal Functions-Footnote-2583401 -Node: Join Function583610 -Ref: Join Function-Footnote-1585381 -Node: Getlocaltime Function585581 -Node: Readfile Function589322 -Node: Data File Management591161 -Node: Filetrans Function591793 -Node: Rewind Function595862 -Node: File Checking597249 -Node: Empty Files598343 -Node: Ignoring Assigns600573 -Node: Getopt Function602126 -Ref: Getopt Function-Footnote-1613429 -Node: Passwd Functions613632 -Ref: Passwd Functions-Footnote-1622607 -Node: Group Functions622695 -Node: Walking Arrays630779 -Node: Sample Programs632916 -Node: Running Examples633590 -Node: Clones634318 -Node: Cut Program635542 -Node: Egrep Program645387 -Ref: Egrep Program-Footnote-1653160 -Node: Id Program653270 -Node: Split Program656886 -Ref: Split Program-Footnote-1660405 -Node: Tee Program660533 -Node: Uniq Program663336 -Node: Wc Program670765 -Ref: Wc Program-Footnote-1675031 -Ref: Wc Program-Footnote-2675231 -Node: Miscellaneous Programs675323 -Node: Dupword Program676511 -Node: Alarm Program678542 -Node: Translate Program683295 -Ref: Translate Program-Footnote-1687682 -Ref: Translate Program-Footnote-2687930 -Node: Labels Program688064 -Ref: Labels Program-Footnote-1691435 -Node: Word Sorting691519 -Node: History Sorting695403 -Node: Extract Program697242 -Ref: Extract Program-Footnote-1704745 -Node: Simple Sed704873 -Node: Igawk Program707935 -Ref: Igawk Program-Footnote-1723092 -Ref: Igawk Program-Footnote-2723293 -Node: Anagram Program723431 -Node: Signature Program726499 -Node: Advanced Features727599 -Node: Nondecimal Data729485 -Node: Array Sorting731068 -Node: Controlling Array Traversal731765 -Node: Array Sorting Functions740049 -Ref: Array Sorting Functions-Footnote-1743918 -Node: Two-way I/O744112 -Ref: Two-way I/O-Footnote-1749544 -Node: TCP/IP Networking749614 -Node: Profiling752458 -Node: Internationalization759955 -Node: I18N and L10N761380 -Node: Explaining gettext762066 -Ref: Explaining gettext-Footnote-1767134 -Ref: Explaining gettext-Footnote-2767318 -Node: Programmer i18n767483 -Node: Translator i18n771685 -Node: String Extraction772478 -Ref: String Extraction-Footnote-1773439 -Node: Printf Ordering773525 -Ref: Printf Ordering-Footnote-1776309 -Node: I18N Portability776373 -Ref: I18N Portability-Footnote-1778822 -Node: I18N Example778885 -Ref: I18N Example-Footnote-1781523 -Node: Gawk I18N781595 -Node: Debugger782216 -Node: Debugging783187 -Node: Debugging Concepts783620 -Node: Debugging Terms785476 -Node: Awk Debugging788073 -Node: Sample Debugging Session788965 -Node: Debugger Invocation789485 -Node: Finding The Bug790817 -Node: List of Debugger Commands797305 -Node: Breakpoint Control798639 -Node: Debugger Execution Control802303 -Node: Viewing And Changing Data805663 -Node: Execution Stack809019 -Node: Debugger Info810486 -Node: Miscellaneous Debugger Commands814468 -Node: Readline Support819644 -Node: Limitations820475 -Node: Arbitrary Precision Arithmetic822727 -Ref: Arbitrary Precision Arithmetic-Footnote-1824376 -Node: General Arithmetic824524 -Node: Floating Point Issues826244 -Node: String Conversion Precision827125 -Ref: String Conversion Precision-Footnote-1828830 -Node: Unexpected Results828939 -Node: POSIX Floating Point Problems831092 -Ref: POSIX Floating Point Problems-Footnote-1834917 -Node: Integer Programming834955 -Node: Floating-point Programming836694 -Ref: Floating-point Programming-Footnote-1843025 -Ref: Floating-point Programming-Footnote-2843295 -Node: Floating-point Representation843559 -Node: Floating-point Context844724 -Ref: table-ieee-formats845563 -Node: Rounding Mode846947 -Ref: table-rounding-modes847426 -Ref: Rounding Mode-Footnote-1850441 -Node: Gawk and MPFR850620 -Node: Arbitrary Precision Floats851875 -Ref: Arbitrary Precision Floats-Footnote-1854318 -Node: Setting Precision854634 -Ref: table-predefined-precision-strings855320 -Node: Setting Rounding Mode857465 -Ref: table-gawk-rounding-modes857869 -Node: Floating-point Constants859056 -Node: Changing Precision860485 -Ref: Changing Precision-Footnote-1861882 -Node: Exact Arithmetic862056 -Node: Arbitrary Precision Integers865194 -Ref: Arbitrary Precision Integers-Footnote-1868212 -Node: Dynamic Extensions868359 -Node: Extension Intro869817 -Node: Plugin License871082 -Node: Extension Mechanism Outline871767 -Ref: load-extension872184 -Ref: load-new-function873662 -Ref: call-new-function874657 -Node: Extension API Description876672 -Node: Extension API Functions Introduction877885 -Node: General Data Types882751 -Ref: General Data Types-Footnote-1888356 -Node: Requesting Values888655 -Ref: table-value-types-returned889386 -Node: Constructor Functions890340 -Node: Registration Functions893360 -Node: Extension Functions894045 -Node: Exit Callback Functions896270 -Node: Extension Version String897519 -Node: Input Parsers898169 -Node: Output Wrappers907926 -Node: Two-way processors912436 -Node: Printing Messages914644 -Ref: Printing Messages-Footnote-1915721 -Node: Updating `ERRNO'915873 -Node: Accessing Parameters916612 -Node: Symbol Table Access917842 -Node: Symbol table by name918354 -Node: Symbol table by cookie920101 -Ref: Symbol table by cookie-Footnote-1924231 -Node: Cached values924294 -Ref: Cached values-Footnote-1927743 -Node: Array Manipulation927834 -Ref: Array Manipulation-Footnote-1928932 -Node: Array Data Types928971 -Ref: Array Data Types-Footnote-1931674 -Node: Array Functions931766 -Node: Flattening Arrays935532 -Node: Creating Arrays942384 -Node: Extension API Variables947109 -Node: Extension Versioning947745 -Node: Extension API Informational Variables949646 -Node: Extension API Boilerplate950732 -Node: Finding Extensions954536 -Node: Extension Example955096 -Node: Internal File Description955826 -Node: Internal File Ops959917 -Ref: Internal File Ops-Footnote-1971425 -Node: Using Internal File Ops971565 -Ref: Using Internal File Ops-Footnote-1973918 -Node: Extension Samples974184 -Node: Extension Sample File Functions975708 -Node: Extension Sample Fnmatch984193 -Node: Extension Sample Fork985919 -Node: Extension Sample Inplace987137 -Node: Extension Sample Ord988915 -Node: Extension Sample Readdir989751 -Node: Extension Sample Revout991283 -Node: Extension Sample Rev2way991876 -Node: Extension Sample Read write array992566 -Node: Extension Sample Readfile994449 -Node: Extension Sample API Tests995267 -Node: Extension Sample Time995792 -Node: gawkextlib997156 -Node: Language History999937 -Node: V7/SVR3.11001459 -Node: SVR41003779 -Node: POSIX1005221 -Node: BTL1006607 -Node: POSIX/GNU1007341 -Node: Common Extensions1012876 -Node: Ranges and Locales1014182 -Ref: Ranges and Locales-Footnote-11018800 -Ref: Ranges and Locales-Footnote-21018827 -Ref: Ranges and Locales-Footnote-31019087 -Node: Contributors1019308 -Node: Installation1024383 -Node: Gawk Distribution1025277 -Node: Getting1025761 -Node: Extracting1026587 -Node: Distribution contents1028279 -Node: Unix Installation1033984 -Node: Quick Installation1034601 -Node: Additional Configuration Options1037045 -Node: Configuration Philosophy1038781 -Node: Non-Unix Installation1041135 -Node: PC Installation1041593 -Node: PC Binary Installation1042892 -Node: PC Compiling1044740 -Node: PC Testing1047684 -Node: PC Using1048860 -Node: Cygwin1053045 -Node: MSYS1054045 -Node: VMS Installation1054559 -Node: VMS Compilation1055162 -Ref: VMS Compilation-Footnote-11056169 -Node: VMS Installation Details1056227 -Node: VMS Running1057862 -Node: VMS Old Gawk1059469 -Node: Bugs1059943 -Node: Other Versions1063863 -Node: Notes1069947 -Node: Compatibility Mode1070747 -Node: Additions1071530 -Node: Accessing The Source1072457 -Node: Adding Code1073897 -Node: New Ports1079942 -Node: Derived Files1084077 -Ref: Derived Files-Footnote-11089398 -Ref: Derived Files-Footnote-21089432 -Ref: Derived Files-Footnote-31090032 -Node: Future Extensions1090130 -Node: Implementation Limitations1090713 -Node: Extension Design1091965 -Node: Old Extension Problems1093119 -Ref: Old Extension Problems-Footnote-11094627 -Node: Extension New Mechanism Goals1094684 -Ref: Extension New Mechanism Goals-Footnote-11098049 -Node: Extension Other Design Decisions1098235 -Node: Extension Future Growth1100341 -Node: Old Extension Mechanism1101177 -Node: Basic Concepts1102917 -Node: Basic High Level1103598 -Ref: figure-general-flow1103869 -Ref: figure-process-flow1104468 -Ref: Basic High Level-Footnote-11107697 -Node: Basic Data Typing1107882 -Node: Glossary1111237 -Node: Copying1136699 -Node: GNU Free Documentation License1174256 -Node: Index1199393 +Node: Top1366 +Node: Foreword40552 +Node: Preface44897 +Ref: Preface-Footnote-147950 +Ref: Preface-Footnote-248046 +Node: History48278 +Node: Names50652 +Ref: Names-Footnote-152129 +Node: This Manual52201 +Ref: This Manual-Footnote-157975 +Node: Conventions58075 +Node: Manual History60231 +Ref: Manual History-Footnote-163679 +Ref: Manual History-Footnote-263720 +Node: How To Contribute63794 +Node: Acknowledgments64938 +Node: Getting Started69147 +Node: Running gawk71526 +Node: One-shot72712 +Node: Read Terminal73937 +Ref: Read Terminal-Footnote-175587 +Ref: Read Terminal-Footnote-275863 +Node: Long76034 +Node: Executable Scripts77410 +Ref: Executable Scripts-Footnote-179243 +Ref: Executable Scripts-Footnote-279345 +Node: Comments79892 +Node: Quoting82359 +Node: DOS Quoting86982 +Node: Sample Data Files87657 +Node: Very Simple90701 +Node: Two Rules95300 +Node: More Complex97447 +Ref: More Complex-Footnote-1100377 +Node: Statements/Lines100462 +Ref: Statements/Lines-Footnote-1104924 +Node: Other Features105189 +Node: When106117 +Node: Invoking Gawk108264 +Node: Command Line109725 +Node: Options110508 +Ref: Options-Footnote-1125900 +Node: Other Arguments125925 +Node: Naming Standard Input128583 +Node: Environment Variables129677 +Node: AWKPATH Variable130235 +Ref: AWKPATH Variable-Footnote-1132993 +Node: AWKLIBPATH Variable133253 +Node: Other Environment Variables133971 +Node: Exit Status136934 +Node: Include Files137609 +Node: Loading Shared Libraries141178 +Node: Obsolete142542 +Node: Undocumented143239 +Node: Regexp143481 +Node: Regexp Usage144870 +Node: Escape Sequences146896 +Node: Regexp Operators152565 +Ref: Regexp Operators-Footnote-1159945 +Ref: Regexp Operators-Footnote-2160092 +Node: Bracket Expressions160190 +Ref: table-char-classes162080 +Node: GNU Regexp Operators164603 +Node: Case-sensitivity168326 +Ref: Case-sensitivity-Footnote-1171294 +Ref: Case-sensitivity-Footnote-2171529 +Node: Leftmost Longest171637 +Node: Computed Regexps172838 +Node: Reading Files176175 +Node: Records178177 +Ref: Records-Footnote-1187066 +Node: Fields187103 +Ref: Fields-Footnote-1190136 +Node: Nonconstant Fields190222 +Node: Changing Fields192424 +Node: Field Separators198383 +Node: Default Field Splitting201085 +Node: Regexp Field Splitting202202 +Node: Single Character Fields205544 +Node: Command Line Field Separator206603 +Node: Full Line Fields210037 +Ref: Full Line Fields-Footnote-1210545 +Node: Field Splitting Summary210591 +Ref: Field Splitting Summary-Footnote-1213690 +Node: Constant Size213791 +Node: Splitting By Content218375 +Ref: Splitting By Content-Footnote-1222101 +Node: Multiple Line222141 +Ref: Multiple Line-Footnote-1227988 +Node: Getline228167 +Node: Plain Getline230383 +Node: Getline/Variable232478 +Node: Getline/File233625 +Node: Getline/Variable/File234966 +Ref: Getline/Variable/File-Footnote-1236565 +Node: Getline/Pipe236652 +Node: Getline/Variable/Pipe239351 +Node: Getline/Coprocess240458 +Node: Getline/Variable/Coprocess241710 +Node: Getline Notes242447 +Node: Getline Summary245234 +Ref: table-getline-variants245642 +Node: Read Timeout246554 +Ref: Read Timeout-Footnote-1250295 +Node: Command line directories250352 +Node: Printing250982 +Node: Print252613 +Node: Print Examples253950 +Node: Output Separators256734 +Node: OFMT258494 +Node: Printf259852 +Node: Basic Printf260758 +Node: Control Letters262297 +Node: Format Modifiers266109 +Node: Printf Examples272118 +Node: Redirection274833 +Node: Special Files281798 +Node: Special FD282331 +Ref: Special FD-Footnote-1285956 +Node: Special Network286030 +Node: Special Caveats286880 +Node: Close Files And Pipes287676 +Ref: Close Files And Pipes-Footnote-1294659 +Ref: Close Files And Pipes-Footnote-2294807 +Node: Expressions294957 +Node: Values296089 +Node: Constants296765 +Node: Scalar Constants297445 +Ref: Scalar Constants-Footnote-1298304 +Node: Nondecimal-numbers298486 +Node: Regexp Constants301486 +Node: Using Constant Regexps301961 +Node: Variables305016 +Node: Using Variables305671 +Node: Assignment Options307395 +Node: Conversion309267 +Ref: table-locale-affects314768 +Ref: Conversion-Footnote-1315392 +Node: All Operators315501 +Node: Arithmetic Ops316131 +Node: Concatenation318636 +Ref: Concatenation-Footnote-1321428 +Node: Assignment Ops321548 +Ref: table-assign-ops326536 +Node: Increment Ops327867 +Node: Truth Values and Conditions331301 +Node: Truth Values332384 +Node: Typing and Comparison333433 +Node: Variable Typing334226 +Ref: Variable Typing-Footnote-1338123 +Node: Comparison Operators338245 +Ref: table-relational-ops338655 +Node: POSIX String Comparison342204 +Ref: POSIX String Comparison-Footnote-1343160 +Node: Boolean Ops343298 +Ref: Boolean Ops-Footnote-1347376 +Node: Conditional Exp347467 +Node: Function Calls349199 +Node: Precedence352793 +Node: Locales356462 +Node: Patterns and Actions357551 +Node: Pattern Overview358605 +Node: Regexp Patterns360274 +Node: Expression Patterns360817 +Node: Ranges364502 +Node: BEGIN/END367468 +Node: Using BEGIN/END368230 +Ref: Using BEGIN/END-Footnote-1370961 +Node: I/O And BEGIN/END371067 +Node: BEGINFILE/ENDFILE373349 +Node: Empty376263 +Node: Using Shell Variables376579 +Node: Action Overview378864 +Node: Statements381221 +Node: If Statement383075 +Node: While Statement384574 +Node: Do Statement386618 +Node: For Statement387774 +Node: Switch Statement390926 +Node: Break Statement393023 +Node: Continue Statement395013 +Node: Next Statement396806 +Node: Nextfile Statement399196 +Node: Exit Statement401839 +Node: Built-in Variables404255 +Node: User-modified405350 +Ref: User-modified-Footnote-1413708 +Node: Auto-set413770 +Ref: Auto-set-Footnote-1427240 +Ref: Auto-set-Footnote-2427445 +Node: ARGC and ARGV427501 +Node: Arrays431352 +Node: Array Basics432857 +Node: Array Intro433683 +Node: Reference to Elements438000 +Node: Assigning Elements440270 +Node: Array Example440761 +Node: Scanning an Array442493 +Node: Controlling Scanning444807 +Ref: Controlling Scanning-Footnote-1449894 +Node: Delete450210 +Ref: Delete-Footnote-1452975 +Node: Numeric Array Subscripts453032 +Node: Uninitialized Subscripts455215 +Node: Multidimensional456842 +Node: Multiscanning459934 +Node: Arrays of Arrays461523 +Node: Functions466163 +Node: Built-in466982 +Node: Calling Built-in468060 +Node: Numeric Functions470048 +Ref: Numeric Functions-Footnote-1473880 +Ref: Numeric Functions-Footnote-2474237 +Ref: Numeric Functions-Footnote-3474285 +Node: String Functions474554 +Ref: String Functions-Footnote-1497474 +Ref: String Functions-Footnote-2497603 +Ref: String Functions-Footnote-3497851 +Node: Gory Details497938 +Ref: table-sub-escapes499617 +Ref: table-sub-posix-92500971 +Ref: table-sub-proposed502322 +Ref: table-posix-sub503676 +Ref: table-gensub-escapes505221 +Ref: Gory Details-Footnote-1506397 +Ref: Gory Details-Footnote-2506448 +Node: I/O Functions506599 +Ref: I/O Functions-Footnote-1513584 +Node: Time Functions513731 +Ref: Time Functions-Footnote-1524664 +Ref: Time Functions-Footnote-2524732 +Ref: Time Functions-Footnote-3524890 +Ref: Time Functions-Footnote-4525001 +Ref: Time Functions-Footnote-5525113 +Ref: Time Functions-Footnote-6525340 +Node: Bitwise Functions525606 +Ref: table-bitwise-ops526168 +Ref: Bitwise Functions-Footnote-1530389 +Node: Type Functions530573 +Node: I18N Functions531724 +Node: User-defined533351 +Node: Definition Syntax534155 +Ref: Definition Syntax-Footnote-1539065 +Node: Function Example539134 +Node: Function Caveats541728 +Node: Calling A Function542149 +Node: Variable Scope543264 +Node: Pass By Value/Reference546227 +Node: Return Statement549735 +Node: Dynamic Typing552716 +Node: Indirect Calls553647 +Node: Library Functions563332 +Ref: Library Functions-Footnote-1566845 +Ref: Library Functions-Footnote-2566988 +Node: Library Names567159 +Ref: Library Names-Footnote-1570630 +Ref: Library Names-Footnote-2570850 +Node: General Functions570936 +Node: Strtonum Function571964 +Node: Assert Function574894 +Node: Round Function578220 +Node: Cliff Random Function579763 +Node: Ordinal Functions580779 +Ref: Ordinal Functions-Footnote-1583849 +Ref: Ordinal Functions-Footnote-2584101 +Node: Join Function584310 +Ref: Join Function-Footnote-1586081 +Node: Getlocaltime Function586281 +Node: Readfile Function590022 +Node: Data File Management591861 +Node: Filetrans Function592493 +Node: Rewind Function596562 +Node: File Checking597949 +Node: Empty Files599043 +Node: Ignoring Assigns601273 +Node: Getopt Function602826 +Ref: Getopt Function-Footnote-1614129 +Node: Passwd Functions614332 +Ref: Passwd Functions-Footnote-1623307 +Node: Group Functions623395 +Node: Walking Arrays631479 +Node: Sample Programs633616 +Node: Running Examples634290 +Node: Clones635018 +Node: Cut Program636242 +Node: Egrep Program646087 +Ref: Egrep Program-Footnote-1653860 +Node: Id Program653970 +Node: Split Program657586 +Ref: Split Program-Footnote-1661105 +Node: Tee Program661233 +Node: Uniq Program664036 +Node: Wc Program671465 +Ref: Wc Program-Footnote-1675731 +Ref: Wc Program-Footnote-2675931 +Node: Miscellaneous Programs676023 +Node: Dupword Program677211 +Node: Alarm Program679242 +Node: Translate Program683995 +Ref: Translate Program-Footnote-1688382 +Ref: Translate Program-Footnote-2688630 +Node: Labels Program688764 +Ref: Labels Program-Footnote-1692135 +Node: Word Sorting692219 +Node: History Sorting696103 +Node: Extract Program697942 +Ref: Extract Program-Footnote-1705445 +Node: Simple Sed705573 +Node: Igawk Program708635 +Ref: Igawk Program-Footnote-1723792 +Ref: Igawk Program-Footnote-2723993 +Node: Anagram Program724131 +Node: Signature Program727199 +Node: Advanced Features728299 +Node: Nondecimal Data730185 +Node: Array Sorting731768 +Node: Controlling Array Traversal732465 +Node: Array Sorting Functions740749 +Ref: Array Sorting Functions-Footnote-1744618 +Node: Two-way I/O744812 +Ref: Two-way I/O-Footnote-1750244 +Node: TCP/IP Networking750314 +Node: Profiling753158 +Node: Internationalization760655 +Node: I18N and L10N762080 +Node: Explaining gettext762766 +Ref: Explaining gettext-Footnote-1767834 +Ref: Explaining gettext-Footnote-2768018 +Node: Programmer i18n768183 +Node: Translator i18n772385 +Node: String Extraction773178 +Ref: String Extraction-Footnote-1774139 +Node: Printf Ordering774225 +Ref: Printf Ordering-Footnote-1777009 +Node: I18N Portability777073 +Ref: I18N Portability-Footnote-1779522 +Node: I18N Example779585 +Ref: I18N Example-Footnote-1782223 +Node: Gawk I18N782295 +Node: Debugger782916 +Node: Debugging783887 +Node: Debugging Concepts784320 +Node: Debugging Terms786176 +Node: Awk Debugging788773 +Node: Sample Debugging Session789665 +Node: Debugger Invocation790185 +Node: Finding The Bug791517 +Node: List of Debugger Commands798005 +Node: Breakpoint Control799339 +Node: Debugger Execution Control803003 +Node: Viewing And Changing Data806363 +Node: Execution Stack809719 +Node: Debugger Info811186 +Node: Miscellaneous Debugger Commands815168 +Node: Readline Support820344 +Node: Limitations821175 +Node: Arbitrary Precision Arithmetic823427 +Ref: Arbitrary Precision Arithmetic-Footnote-1825076 +Node: General Arithmetic825224 +Node: Floating Point Issues826944 +Node: String Conversion Precision827825 +Ref: String Conversion Precision-Footnote-1829530 +Node: Unexpected Results829639 +Node: POSIX Floating Point Problems831792 +Ref: POSIX Floating Point Problems-Footnote-1835617 +Node: Integer Programming835655 +Node: Floating-point Programming837394 +Ref: Floating-point Programming-Footnote-1843725 +Ref: Floating-point Programming-Footnote-2843995 +Node: Floating-point Representation844259 +Node: Floating-point Context845424 +Ref: table-ieee-formats846263 +Node: Rounding Mode847647 +Ref: table-rounding-modes848126 +Ref: Rounding Mode-Footnote-1851141 +Node: Gawk and MPFR851320 +Node: Arbitrary Precision Floats852575 +Ref: Arbitrary Precision Floats-Footnote-1855018 +Node: Setting Precision855334 +Ref: table-predefined-precision-strings856020 +Node: Setting Rounding Mode858165 +Ref: table-gawk-rounding-modes858569 +Node: Floating-point Constants859756 +Node: Changing Precision861185 +Ref: Changing Precision-Footnote-1862582 +Node: Exact Arithmetic862756 +Node: Arbitrary Precision Integers865894 +Ref: Arbitrary Precision Integers-Footnote-1868912 +Node: Dynamic Extensions869059 +Node: Extension Intro870517 +Node: Plugin License871782 +Node: Extension Mechanism Outline872467 +Ref: load-extension872884 +Ref: load-new-function874362 +Ref: call-new-function875357 +Node: Extension API Description877372 +Node: Extension API Functions Introduction878585 +Node: General Data Types883451 +Ref: General Data Types-Footnote-1889056 +Node: Requesting Values889355 +Ref: table-value-types-returned890086 +Node: Constructor Functions891040 +Node: Registration Functions894060 +Node: Extension Functions894745 +Node: Exit Callback Functions896970 +Node: Extension Version String898219 +Node: Input Parsers898869 +Node: Output Wrappers908626 +Node: Two-way processors913136 +Node: Printing Messages915344 +Ref: Printing Messages-Footnote-1916421 +Node: Updating `ERRNO'916573 +Node: Accessing Parameters917312 +Node: Symbol Table Access918542 +Node: Symbol table by name919054 +Node: Symbol table by cookie920801 +Ref: Symbol table by cookie-Footnote-1924931 +Node: Cached values924994 +Ref: Cached values-Footnote-1928443 +Node: Array Manipulation928534 +Ref: Array Manipulation-Footnote-1929632 +Node: Array Data Types929671 +Ref: Array Data Types-Footnote-1932374 +Node: Array Functions932466 +Node: Flattening Arrays936232 +Node: Creating Arrays943084 +Node: Extension API Variables947809 +Node: Extension Versioning948445 +Node: Extension API Informational Variables950346 +Node: Extension API Boilerplate951432 +Node: Finding Extensions955236 +Node: Extension Example955796 +Node: Internal File Description956526 +Node: Internal File Ops960617 +Ref: Internal File Ops-Footnote-1972125 +Node: Using Internal File Ops972265 +Ref: Using Internal File Ops-Footnote-1974618 +Node: Extension Samples974884 +Node: Extension Sample File Functions976408 +Node: Extension Sample Fnmatch984893 +Node: Extension Sample Fork986619 +Node: Extension Sample Inplace987837 +Node: Extension Sample Ord989615 +Node: Extension Sample Readdir990451 +Node: Extension Sample Revout991983 +Node: Extension Sample Rev2way992576 +Node: Extension Sample Read write array993266 +Node: Extension Sample Readfile995149 +Node: Extension Sample API Tests995967 +Node: Extension Sample Time996492 +Node: gawkextlib997856 +Node: Language History1000637 +Node: V7/SVR3.11002159 +Node: SVR41004479 +Node: POSIX1005921 +Node: BTL1007307 +Node: POSIX/GNU1008041 +Node: Common Extensions1013576 +Node: Ranges and Locales1014882 +Ref: Ranges and Locales-Footnote-11019500 +Ref: Ranges and Locales-Footnote-21019527 +Ref: Ranges and Locales-Footnote-31019787 +Node: Contributors1020008 +Node: Installation1025083 +Node: Gawk Distribution1025977 +Node: Getting1026461 +Node: Extracting1027287 +Node: Distribution contents1028979 +Node: Unix Installation1034684 +Node: Quick Installation1035301 +Node: Additional Configuration Options1037745 +Node: Configuration Philosophy1039481 +Node: Non-Unix Installation1041835 +Node: PC Installation1042293 +Node: PC Binary Installation1043592 +Node: PC Compiling1045440 +Node: PC Testing1048384 +Node: PC Using1049560 +Node: Cygwin1053745 +Node: MSYS1054745 +Node: VMS Installation1055259 +Node: VMS Compilation1055862 +Ref: VMS Compilation-Footnote-11056869 +Node: VMS Installation Details1056927 +Node: VMS Running1058562 +Node: VMS Old Gawk1060169 +Node: Bugs1060643 +Node: Other Versions1064563 +Node: Notes1070647 +Node: Compatibility Mode1071447 +Node: Additions1072230 +Node: Accessing The Source1073157 +Node: Adding Code1074597 +Node: New Ports1080642 +Node: Derived Files1084777 +Ref: Derived Files-Footnote-11090098 +Ref: Derived Files-Footnote-21090132 +Ref: Derived Files-Footnote-31090732 +Node: Future Extensions1090830 +Node: Implementation Limitations1091413 +Node: Extension Design1092665 +Node: Old Extension Problems1093819 +Ref: Old Extension Problems-Footnote-11095327 +Node: Extension New Mechanism Goals1095384 +Ref: Extension New Mechanism Goals-Footnote-11098749 +Node: Extension Other Design Decisions1098935 +Node: Extension Future Growth1101041 +Node: Old Extension Mechanism1101877 +Node: Basic Concepts1103617 +Node: Basic High Level1104298 +Ref: figure-general-flow1104569 +Ref: figure-process-flow1105168 +Ref: Basic High Level-Footnote-11108397 +Node: Basic Data Typing1108582 +Node: Glossary1111937 +Node: Copying1137399 +Node: GNU Free Documentation License1174956 +Node: Index1200093 End Tag Table |