AWK Programming

Request more details:

submit request
The objective of this course is to develop the advanced skills required to write applications using the awk programming language.
The ability to write programs in a high level language (such as C or shell) is very helpful in completing the lab exercises and understanding the lectures. A good working knowledge of the UNIX environment is necessary.
Getting Started with awk :
How to Run awk Programs
Datafiles for the Examples
Some Simple Examples
An Example with Two Rules
A More Complex Example
awk Statements Versus Lines
Other Features of awk
When to Use awk
Regular Expressions :
How to Use Regular Expressions
Escape Sequences
Regular Expression Operators
Using Character Lists
gawk-Specific Regexp Operators
Case Sensitivity in Matching
How Much Text Matches?
Using Dynamic Regexps
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 with getline
Printing Output :
The print Statement
Examples of print Statements
Output Separators
Controlling Numeric Output with print
Using printf Statements for Fancier Printing
Redirecting Output of print and printf
Special Filenames in gawk
Closing Input and Output Redirections
Expressions :
Constant Expressions
Using Regular Expression Constants
Conversion of Strings and Numbers
Arithmetic Operators
String Concatenation
Assignment Expressions
Increment and Decrement Operators
True and False in awk
Variable Typing and Comparison Expressions
Boolean Expressions
Conditional Expressions
Function Calls
Operator Precedence (How Operators\ Nest)
Patterns, Actions, and Variables :
Pattern Elements
Using Shell Variables in Programs
Control Statements in Actions
Built-in Variables
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 with gawk
Functions :
Built-in Functions
User-Defined Functions
Internationalization with gawk :
Internationalization and Localization
GNU gettext
Internationalizing awk Programs
Translating awk Programs
A Simple Internationalization Example
gawk Can Speak Your Language
Advanced Features of gawk :
Allowing Nondecimal Input Data
Two-Way Communications with\ Another\ Process
Using gawk for Network Programming
Using gawk with BSD Portals
Profiling Your awk Programs
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
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
Practical awk Programs :
Running the Example Programs
Reinventing Wheels for Fun and Profit
A Grab Bag of awk Programs
Internetworking with gawk :
Networking with gawk
Some Applications and Techniques
Related Links