AWK Programming
Course Description
The objective of this course is to develop the advanced skills required to write applications using the awk programming language.
3 Days
Contact us for pricing
Prerequisites
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 ProgramsDatafiles 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 ExpressionsEscape 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 RecordsExamining 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 StatementExamples 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 ExpressionsUsing Regular Expression Constants
Variables
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 ElementsUsing Shell Variables in Programs
Actions
Control Statements in Actions
Built-in Variables
Arrays in awk
Introduction to ArraysReferring 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 FunctionsUser-Defined Functions
Internationalization with gawk
Internationalization and LocalizationGNU gettext
Internationalizing awk Programs
Translating awk Programs
A Simple Internationalization Example
gawk Can Speak Your Language
Advanced Features of gawk
Allowing Nondecimal Input DataTwo-Way Communications with Another Process
Using gawk for Network Programming
Using gawk with BSD Portals
Profiling Your awk Programs
Running awk and gawk
Invoking awkCommand-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 VariablesGeneral Programming
Datafile Management
Processing Command-Line Options
Reading the User Database
Reading the Group Database
Practical awk Programs
Running the Example ProgramsReinventing Wheels for Fun and Profit
A Grab Bag of awk Programs
Internetworking with gawk
Networking with gawkSome Applications and Techniques
Related Links
AWKUnixAWK Programming