This is gawk.info, produced by makeinfo version 4.13 from foo.texi. INFO-DIR-SECTION Text creation and manipulation START-INFO-DIR-ENTRY * Gawk: (gawk). A text scanning and processing language. END-INFO-DIR-ENTRY INFO-DIR-SECTION Individual utilities START-INFO-DIR-ENTRY * awk: (gawk)Invoking gawk. Text scanning and processing. 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 Free Software Foundation, Inc. This is Edition 4 of `GAWK: Effective AWK Programming: A User's Guide for GNU Awk', for the 4.0.1 (or later) version of the GNU implementation of AWK. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with the Invariant Sections being "GNU General Public License", the Front-Cover texts being (a) (see below), and with the Back-Cover Texts being (b) (see below). A copy of the license is included in the section entitled "GNU Free Documentation License". a. "A GNU Manual" b. "You have the freedom to copy and modify this GNU manual. Buying copies from the FSF supports it in developing GNU and promoting software freedom."  Indirect: gawk.info-1: 1351 gawk.info-2: 297599 gawk.info-3: 596405 gawk.info-4: 896127 gawk.info-5: 1043758  Tag Table: (Indirect) Node: Top1351 Node: Foreword31870 Node: Preface36215 Ref: Preface-Footnote-139268 Ref: Preface-Footnote-239374 Node: History39606 Node: Names41997 Ref: Names-Footnote-143474 Node: This Manual43546 Ref: This Manual-Footnote-148450 Node: Conventions48550 Node: Manual History50684 Ref: Manual History-Footnote-153954 Ref: Manual History-Footnote-253995 Node: How To Contribute54069 Node: Acknowledgments55213 Node: Getting Started59709 Node: Running gawk62088 Node: One-shot63274 Node: Read Terminal64499 Ref: Read Terminal-Footnote-166149 Ref: Read Terminal-Footnote-266425 Node: Long66596 Node: Executable Scripts67972 Ref: Executable Scripts-Footnote-169841 Ref: Executable Scripts-Footnote-269943 Node: Comments70490 Node: Quoting72957 Node: DOS Quoting77580 Node: Sample Data Files78255 Node: Very Simple81287 Node: Two Rules85886 Node: More Complex88033 Ref: More Complex-Footnote-190963 Node: Statements/Lines91048 Ref: Statements/Lines-Footnote-195510 Node: Other Features95775 Node: When96703 Node: Invoking Gawk98850 Node: Command Line100311 Node: Options101094 Ref: Options-Footnote-1116492 Node: Other Arguments116517 Node: Naming Standard Input119175 Node: Environment Variables120269 Node: AWKPATH Variable120827 Ref: AWKPATH Variable-Footnote-1123585 Node: AWKLIBPATH Variable123845 Node: Other Environment Variables124442 Node: Exit Status126937 Node: Include Files127612 Node: Loading Shared Libraries131181 Node: Obsolete132406 Node: Undocumented133103 Node: Regexp133346 Node: Regexp Usage134735 Node: Escape Sequences136761 Node: Regexp Operators142524 Ref: Regexp Operators-Footnote-1149904 Ref: Regexp Operators-Footnote-2150051 Node: Bracket Expressions150149 Ref: table-char-classes152039 Node: GNU Regexp Operators154562 Node: Case-sensitivity158285 Ref: Case-sensitivity-Footnote-1161253 Ref: Case-sensitivity-Footnote-2161488 Node: Leftmost Longest161596 Node: Computed Regexps162797 Node: Reading Files166207 Node: Records168210 Ref: Records-Footnote-1176884 Node: Fields176921 Ref: Fields-Footnote-1179954 Node: Nonconstant Fields180040 Node: Changing Fields182242 Node: Field Separators188223 Node: Default Field Splitting190852 Node: Regexp Field Splitting191969 Node: Single Character Fields195311 Node: Command Line Field Separator196370 Node: Field Splitting Summary199811 Ref: Field Splitting Summary-Footnote-1203003 Node: Constant Size203104 Node: Splitting By Content207688 Ref: Splitting By Content-Footnote-1211414 Node: Multiple Line211454 Ref: Multiple Line-Footnote-1217301 Node: Getline217480 Node: Plain Getline219696 Node: Getline/Variable221785 Node: Getline/File222926 Node: Getline/Variable/File224248 Ref: Getline/Variable/File-Footnote-1225847 Node: Getline/Pipe225934 Node: Getline/Variable/Pipe228494 Node: Getline/Coprocess229601 Node: Getline/Variable/Coprocess230844 Node: Getline Notes231558 Node: Getline Summary233500 Ref: table-getline-variants233908 Node: Read Timeout234764 Ref: Read Timeout-Footnote-1238509 Node: Command line directories238566 Node: Printing239196 Node: Print240827 Node: Print Examples242164 Node: Output Separators244948 Node: OFMT246708 Node: Printf248066 Node: Basic Printf248972 Node: Control Letters250511 Node: Format Modifiers254323 Node: Printf Examples260332 Node: Redirection263047 Node: Special Files270031 Node: Special FD270564 Ref: Special FD-Footnote-1274189 Node: Special Network274263 Node: Special Caveats275113 Node: Close Files And Pipes275909 Ref: Close Files And Pipes-Footnote-1282932 Ref: Close Files And Pipes-Footnote-2283080 Node: Expressions283230 Node: Values284362 Node: Constants285038 Node: Scalar Constants285718 Ref: Scalar Constants-Footnote-1286577 Node: Nondecimal-numbers286759 Node: Regexp Constants289818 Node: Using Constant Regexps290293 Node: Variables293348 Node: Using Variables294003 Node: Assignment Options295727 Node: Conversion297599 Ref: table-locale-affects302975 Ref: Conversion-Footnote-1303599 Node: All Operators303708 Node: Arithmetic Ops304338 Node: Concatenation306843 Ref: Concatenation-Footnote-1309636 Node: Assignment Ops309756 Ref: table-assign-ops314744 Node: Increment Ops316152 Node: Truth Values and Conditions319622 Node: Truth Values320705 Node: Typing and Comparison321754 Node: Variable Typing322543 Ref: Variable Typing-Footnote-1326440 Node: Comparison Operators326562 Ref: table-relational-ops326972 Node: POSIX String Comparison330521 Ref: POSIX String Comparison-Footnote-1331477 Node: Boolean Ops331615 Ref: Boolean Ops-Footnote-1335693 Node: Conditional Exp335784 Node: Function Calls337516 Node: Precedence341110 Node: Locales344779 Node: Patterns and Actions345868 Node: Pattern Overview346922 Node: Regexp Patterns348591 Node: Expression Patterns349134 Node: Ranges352819 Node: BEGIN/END355785 Node: Using BEGIN/END356547 Ref: Using BEGIN/END-Footnote-1359278 Node: I/O And BEGIN/END359384 Node: BEGINFILE/ENDFILE361666 Node: Empty364570 Node: Using Shell Variables364886 Node: Action Overview367171 Node: Statements369528 Node: If Statement371382 Node: While Statement372881 Node: Do Statement374925 Node: For Statement376081 Node: Switch Statement379233 Node: Break Statement381330 Node: Continue Statement383320 Node: Next Statement385113 Node: Nextfile Statement387503 Node: Exit Statement390048 Node: Built-in Variables392464 Node: User-modified393559 Ref: User-modified-Footnote-1401914 Node: Auto-set401976 Ref: Auto-set-Footnote-1411884 Node: ARGC and ARGV412089 Node: Arrays415940 Node: Array Basics417445 Node: Array Intro418271 Node: Reference to Elements422589 Node: Assigning Elements424859 Node: Array Example425350 Node: Scanning an Array427082 Node: Controlling Scanning429396 Ref: Controlling Scanning-Footnote-1434329 Node: Delete434645 Ref: Delete-Footnote-1437080 Node: Numeric Array Subscripts437137 Node: Uninitialized Subscripts439320 Node: Multi-dimensional440948 Node: Multi-scanning444042 Node: Arrays of Arrays445633 Node: Functions450278 Node: Built-in451100 Node: Calling Built-in452178 Node: Numeric Functions454166 Ref: Numeric Functions-Footnote-1457998 Ref: Numeric Functions-Footnote-2458355 Ref: Numeric Functions-Footnote-3458403 Node: String Functions458672 Ref: String Functions-Footnote-1482169 Ref: String Functions-Footnote-2482298 Ref: String Functions-Footnote-3482546 Node: Gory Details482633 Ref: table-sub-escapes484312 Ref: table-sub-posix-92485666 Ref: table-sub-proposed487009 Ref: table-posix-sub488359 Ref: table-gensub-escapes489905 Ref: Gory Details-Footnote-1491112 Ref: Gory Details-Footnote-2491163 Node: I/O Functions491314 Ref: I/O Functions-Footnote-1497969 Node: Time Functions498116 Ref: Time Functions-Footnote-1509008 Ref: Time Functions-Footnote-2509076 Ref: Time Functions-Footnote-3509234 Ref: Time Functions-Footnote-4509345 Ref: Time Functions-Footnote-5509457 Ref: Time Functions-Footnote-6509684 Node: Bitwise Functions509950 Ref: table-bitwise-ops510508 Ref: Bitwise Functions-Footnote-1514729 Node: Type Functions514913 Node: I18N Functions515383 Node: User-defined517010 Node: Definition Syntax517814 Ref: Definition Syntax-Footnote-1522724 Node: Function Example522793 Node: Function Caveats525387 Node: Calling A Function525808 Node: Variable Scope526923 Node: Pass By Value/Reference528898 Node: Return Statement532338 Node: Dynamic Typing535319 Node: Indirect Calls536054 Node: Internationalization545739 Node: I18N and L10N547178 Node: Explaining gettext547864 Ref: Explaining gettext-Footnote-1552930 Ref: Explaining gettext-Footnote-2553114 Node: Programmer i18n553279 Node: Translator i18n557479 Node: String Extraction558272 Ref: String Extraction-Footnote-1559233 Node: Printf Ordering559319 Ref: Printf Ordering-Footnote-1562103 Node: I18N Portability562167 Ref: I18N Portability-Footnote-1564616 Node: I18N Example564679 Ref: I18N Example-Footnote-1567314 Node: Gawk I18N567386 Node: Arbitrary Precision Arithmetic568003 Ref: Arbitrary Precision Arithmetic-Footnote-1569655 Node: General Arithmetic569803 Node: Floating Point Issues571523 Node: String Conversion Precision572618 Ref: String Conversion Precision-Footnote-1574324 Node: Unexpected Results574433 Node: POSIX Floating Point Problems576271 Ref: POSIX Floating Point Problems-Footnote-1580096 Node: Integer Programming580134 Node: Floating-point Programming581882 Node: Floating-point Representation588107 Node: Floating-point Context589274 Ref: table-ieee-formats590116 Node: Rounding Mode591500 Ref: table-rounding-modes591979 Ref: Rounding Mode-Footnote-1594983 Node: Gawk and MPFR595164 Node: Arbitrary Precision Floats596405 Ref: Arbitrary Precision Floats-Footnote-1598827 Node: Setting Precision599138 Node: Setting Rounding Mode601865 Ref: table-gawk-rounding-modes602269 Node: Floating-point Constants603466 Node: Changing Precision604888 Ref: Changing Precision-Footnote-1606288 Node: Exact Arithmetic606462 Node: Arbitrary Precision Integers609560 Ref: Arbitrary Precision Integers-Footnote-1612642 Node: Advanced Features612789 Node: Nondecimal Data614312 Node: Array Sorting615895 Node: Controlling Array Traversal616592 Node: Array Sorting Functions624829 Ref: Array Sorting Functions-Footnote-1628503 Ref: Array Sorting Functions-Footnote-2628596 Node: Two-way I/O628790 Ref: Two-way I/O-Footnote-1634222 Node: TCP/IP Networking634292 Node: Profiling637136 Node: Library Functions644590 Ref: Library Functions-Footnote-1647597 Node: Library Names647768 Ref: Library Names-Footnote-1651239 Ref: Library Names-Footnote-2651459 Node: General Functions651545 Node: Strtonum Function652498 Node: Assert Function655428 Node: Round Function658754 Node: Cliff Random Function660297 Node: Ordinal Functions661313 Ref: Ordinal Functions-Footnote-1664383 Ref: Ordinal Functions-Footnote-2664635 Node: Join Function664844 Ref: Join Function-Footnote-1666615 Node: Getlocaltime Function666815 Node: Data File Management670530 Node: Filetrans Function671162 Node: Rewind Function675301 Node: File Checking676688 Node: Empty Files677782 Node: Ignoring Assigns680012 Node: Getopt Function681565 Ref: Getopt Function-Footnote-1692869 Node: Passwd Functions693072 Ref: Passwd Functions-Footnote-1702047 Node: Group Functions702135 Node: Walking Arrays710219 Node: Sample Programs711788 Node: Running Examples712453 Node: Clones713181 Node: Cut Program714405 Node: Egrep Program724250 Ref: Egrep Program-Footnote-1732023 Node: Id Program732133 Node: Split Program735749 Ref: Split Program-Footnote-1739268 Node: Tee Program739396 Node: Uniq Program742199 Node: Wc Program749628 Ref: Wc Program-Footnote-1753894 Ref: Wc Program-Footnote-2754094 Node: Miscellaneous Programs754186 Node: Dupword Program755374 Node: Alarm Program757405 Node: Translate Program762154 Ref: Translate Program-Footnote-1766541 Ref: Translate Program-Footnote-2766769 Node: Labels Program766903 Ref: Labels Program-Footnote-1770274 Node: Word Sorting770358 Node: History Sorting774242 Node: Extract Program776081 Ref: Extract Program-Footnote-1783564 Node: Simple Sed783692 Node: Igawk Program786754 Ref: Igawk Program-Footnote-1801911 Ref: Igawk Program-Footnote-2802112 Node: Anagram Program802250 Node: Signature Program805318 Node: Debugger806418 Node: Debugging807372 Node: Debugging Concepts807805 Node: Debugging Terms809661 Node: Awk Debugging812258 Node: Sample Debugging Session813150 Node: Debugger Invocation813670 Node: Finding The Bug814999 Node: List of Debugger Commands821487 Node: Breakpoint Control822821 Node: Debugger Execution Control826485 Node: Viewing And Changing Data829845 Node: Execution Stack833201 Node: Debugger Info834668 Node: Miscellaneous Debugger Commands838649 Node: Readline Support844094 Node: Limitations844925 Node: Dynamic Extensions847177 Node: Plugin License848073 Node: Sample Library848687 Node: Internal File Description849371 Node: Internal File Ops853084 Ref: Internal File Ops-Footnote-1857647 Node: Using Internal File Ops857787 Node: Language History860163 Node: V7/SVR3.1861685 Node: SVR4864006 Node: POSIX865448 Node: BTL866456 Node: POSIX/GNU867190 Node: Common Extensions872725 Node: Ranges and Locales873832 Ref: Ranges and Locales-Footnote-1878436 Node: Contributors878657 Node: Installation882953 Node: Gawk Distribution883847 Node: Getting884331 Node: Extracting885157 Node: Distribution contents886849 Node: Unix Installation892071 Node: Quick Installation892688 Node: Additional Configuration Options894650 Node: Configuration Philosophy896127 Node: Non-Unix Installation898469 Node: PC Installation898927 Node: PC Binary Installation900226 Node: PC Compiling902074 Node: PC Testing905018 Node: PC Using906194 Node: Cygwin910379 Node: MSYS911379 Node: VMS Installation911893 Node: VMS Compilation912496 Ref: VMS Compilation-Footnote-1913503 Node: VMS Installation Details913561 Node: VMS Running915196 Node: VMS Old Gawk916803 Node: Bugs917277 Node: Other Versions921129 Node: Notes926444 Node: Compatibility Mode927031 Node: Additions927814 Node: Accessing The Source928741 Node: Adding Code930166 Node: New Ports936174 Node: Derived Files940309 Ref: Derived Files-Footnote-1945613 Ref: Derived Files-Footnote-2945647 Ref: Derived Files-Footnote-3946247 Node: Future Extensions946345 Node: Basic Concepts947832 Node: Basic High Level948513 Ref: Basic High Level-Footnote-1952548 Node: Basic Data Typing952733 Node: Glossary956088 Node: Copying981064 Node: GNU Free Documentation License1018621 Node: Index1043758  End Tag Table