This guide discusses concepts useful in the daily life of the serious Bash user. While a basic knowledge of shell usage is required, it starts with a discussion of shell building blocks and common practices. Then it presents the grep, awk and sed tools that will later be used to create more interesting examples. The second half of the course is about shell constructs such as loops, conditional tests, functions and traps, and a number of ways to make interactive scripts. All chapters come with examples and exercises that will help you become familiar with the theory. Author Biography: Linux advocate of the first hour, Machtelt Garrels has made many contributions to the Open Source community and has been working for over a decade on the wider acceptance of Linux and other Open Source products. She is an active member of the Linux Documentation Project and training manager at CoreSequence. She writes whenever she has the time, closing gaps in existing documentation and taking the opportunity to simplify it when necessary, always keeping in mind that practice is the only way to learn. As a result, her work is full of examples and exercises, forcing the reader to apply the theoretical concepts.
As my previous attempts to fully learn Bash had been short-living and sporadic I've decided that this time I'm going to fully master it in order to prevent myself from writing one-off scripts on high-level languages to do simple stuff that can be easily lifted by Bash.
This book is a great introduction for those who are real new comers, though I thought of myself as of the same kind.
Turns out that's not the right book for me as it's not focused on particular aspects I'm interested in (networking, IO). However, it's nicely written and it will definitely help if you want to have a high-level view on the most important Bash features.