Awk Programming Language

Other Free Books!
Free Computer Books Alliance
Agile Programming
3D Rendering
3D Graphics Libraries
 
Remember that these titles are copyright © the author or the publisher. The author / publisher has generously allowed them to be available for free online. Please respect the terms and conditions of the copyright.

If you know of a quality book that we should include on this page, please let me know.

 

An Awk Tutorial by Greg Goebel
Awk - A Pattern Scanning and Processing Language by Alfred V. Aho, Peter J. Weinberger, Brian W. Kernighan
The Awk Manual by Piet van Oostrum
Gawk - Effective Awk Programming Free Software Foundation


Non-Book Resources

AWK is a general purpose programming language that is designed for processing text-based data, either in files or data streams. The name AWK is derived from the surnames of its authors — Alfred Aho, Peter Weinberger, and Brian Kernighan; however, it is commonly pronounced "awk" and not as a string of separate letters. awk, when written in all lowercase letters, refers to the Unix or Plan 9 program that runs other programs written in the AWK programming language.

AWK is an example of a programming language that extensively uses the string datatype, associative arrays (that is, arrays indexed by key strings), and regular expressions. The power, terseness, and limitations of AWK programs and sed scripts inspired Larry Wall to write Perl. Because of their dense notation, all these languages are often used for writing one-liner programs.

AWK is one of the early tools to appear in Version 7 Unix and gained popularity as a way to add computational features to a Unix pipeline. A version of the AWK language is a standard feature of nearly every modern Unix-like operating system available today. AWK is mentioned in the Single UNIX Specification as one of the mandatory utilities of a Unix operating system. Besides the Bourne shell, AWK is the only other scripting language available in a standard Unix environment. Implementations of AWK exist as installed software for almost all other operating systems.