Effective AWK Programming (1997)

Foreword Preface PART 1: The awk Language and gawk. Chapter 1. Getting Started awk How to Run awk Programs Datafiles for the Examples Some Simple Examples An Example Two Rules A More Complex Example awk Statements Versus Lines Other Features of awk When to Use awk. Chapter 2. Regular Expressions How to Use Regular Expressions Escape Sequences Regular Expression Using Character Lists gawk-Specific Regexp Case Sensitivity in Matching How Much Text Matches? Using Dynamic Regexps. Chapter 3. Reading Input Files How Input Is Split into Records Examining Fields Non-constant Field Numbers Changing the Contents of a Field Specifying How Fields Are Separated Reading Fixed-Width Data Multiple-Line Records Explicit Input getline. Chapter 4. Printing Output The print Statement Examples of print Statements Output Separators Controlling Numeric Output print Using printf Statements for Fancier Printing Redirecting Output of print and printf Special Filenames in gawk Closing Input and Output Redirections. Chapter 5. Expressions Constant Expressions Using Regular Expression Constants Variables Conversion of Strings and Numbers Arithmetic String Concatenation Assignment Expressions Increment and Decrement True and False in awk Variable Typing and Comparison Expressions Boolean Expressions Conditional Expressions Function Calls Operator Precedence (How Operators Nest). Chapter 6. Patterns, Actions, and Variables Pattern Elements Using Shell Variables in Programs Actions Control Statements in Actions Built-in Variables. Chapter 7. Arrays in awk Introduction to Arrays Referring to an Array Element Assigning Array Elements Basic Array Example Scanning All Elements of an Array The delete Statement Using Numbers to Subscript Arrays Using Uninitialized Variables as Subscripts Multidimensional Arrays Scanning Multidimensional Arrays Sorting Array Values and Indices gawk. Chapter 8. Functions Built-in Functions User-Defined Functions. Chapter 9. Internationalization gawk Internationalization and Localization GNU gettext Internationalizing awk Programs Translating awk Programs A Simple Internationalization Example gawk Can Speak Your Language. Chapter 10. Advanced Features of gawk Allowing Nondecimal Input Data Two-Way Communications with Another Process Using gawk for Network Programming Using gawk BSD Portals Profiling Your awk Programs. Chapter 11. Running awk and gawk Invoking awk Command-Line Options Other Command-Line Arguments The AWKPATH Environment Variable Obsolete Options and/or Features Known Bugs in gawk PART 2: Using awk and gawk. Chapter 12. A Library of awk Functions Naming Library Function Global Variables General Programming Datafile Management Processing Command-Line Options Reading the User Database Reading the Group Database. Chapter 13. Practical awk Programs Running the Example Programs Reinventing Wheels for Fun and Profit A Grab Bag of awk Programs. Chapter 14. Internetworking gawk Networking gawk Some Applications and Techniques Related Links PART 3: Appendixes Appendix A. The Evolution of the awk Language Appendix B. Installing gawk Appendix C. Implementation Notes Appendix D. Basic Programming Concepts Appendix E. GNU General Public License Appendix F. GNU Free Documentation License Glossary Index