Example based guide to mastering GNU awk.
The book also includes exercises to test your understanding, which is presented together as a single file in this repo - Exercises.md
For solutions to the exercises, see Exercise_solutions.md.
See Version_changes.md to keep track of changes made to the book.
You can purchase the book using these links:
- https://gumroad.com/l/gnu_awk
- https://leanpub.com/gnu_awk
- You can also get the book as part of Magical one-liners bundle from https://gumroad.com/l/oneliners or https://leanpub.com/b/oneliners
- You can also get the book as part of Awesome Regex bundle from https://leanpub.com/b/regex or https://gumroad.com/l/regex
- See https://learnbyexample.github.io/books/ for list of other books
For a preview of the book, see sample chapters
The book can also be viewed as a single markdown file in this repo. See my blogpost on generating pdf from markdown using pandoc if you are interested in the ebook creation process.
For online html
version of the book, visit https://learnbyexample.github.io/learn_gnuawk/
Please open an issue if you spot any typo/errors.
I'd also highly appreciate your feedback about the book.
Goodreads: https://www.goodreads.com/book/show/52758608-gnu-awk
Twitter: https://twitter.com/learn_byexample
- Preface
- Installation and Documentation
- awk introduction
- Regular Expressions
- Field separators
- Record separators
- In-place file editing
- Using shell variables
- Control Structures
- Built-in functions
- Multiple file input
- Processing multiple records
- Two file processing
- Dealing with duplicates
- awk scripts
- Gotchas and Tips
- Further Reading
- GNU awk documentation — manual and examples
- stackoverflow and unix.stackexchange — for getting answers to pertinent questions on
bash
,awk
and other commands - tex.stackexchange — for help on
pandoc
andtex
related questions - Cover image: LibreOffice Draw
- softwareengineering.stackexchange and skolakoda for programming quotes
- Warning and Info icons by Amada44 under public domain
- arifmahmudrana for spotting an ambiguous explanation
- mdBook — for
html
version of the book
Special thanks to all my friends and online acquaintances for their help, support and encouragement, especially during these difficult times.
The book is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License
The code snippets are licensed under MIT, see LICENSE file