AWK is a sophisticated reporting language, defined in the POSIX Command Language and Utilities standard, that includes user defined functions, dynamic regular expressions and more. AWK programs are data-driven, making them easier to write and easier to read than traditional, procedural type of programs.
This is a manual for the GNU implementation of the Awk programming language, but it is far from a dry command-line reference. Rather, this is an incredibly detailed and friendly walk through all the features that Gawk offers – sometimes it feels like they don’t make documentation like this any more.
There have been many brief introductions to Awk on the web for those just getting into the Unix command line, often alongside the Sed tool. However, this book is well worth reading even if you think you know more or less how Awk works. It turns out that the GNU implemention of Awk is jam-packed with powerful features that make it competitive in contexts where a person might think they would have to resort to e.g. Python (or, in a bygone age, Perl) instead.