Awk is a versatile programming language designed for pattern scanning and processing language and often used as a data extraction and reporting tool. It’s a standard feature of most Unix-like operating systems.
awk is small, fast, simple, and has a clean comprehensible C-like input language. It has robust programming constructs including if/else, while, do/while and for C-style and array iteration.
The language is suited for:
- Tallying information from text files and creating reports from the results
- Adding additional functions to text editors like “vi”
- Translating files from one format to another
- Creating small databases
- Performing mathematical operations on files of numeric data
We publish a series covering the best open source programming books for other popular languages. Read them here.
By Arnold Robbins (560 pages)
This practical guide serves as both a reference and tutorial for POSIX-standard awk and for the GNU implementation, called gawk. This book is useful for novices and awk experts alike.
This thoroughly revised edition describes the awk language and gawk program in detail, shows you how to use awk and gawk for problem solving, and then dives into specific features of gawk. System administrators, programmers, webmasters, and other power users will find everything they need to know about awk and gawk. You will learn how to:
This book is published under the terms of the GNU Free Documentation License.
Read the book here.
By Bruce Barnett (HTML pages)
This tutorial discusses Awk, a cornerstone of UNIX shell programming.
Readers are allowed to print copies of the tutorial for their personal use, but they are not allowed to make electronic copies, or redistribute the tutorial in any form without permission.
By Wikibooks (33 pages)