Every technology needs its reference book and it makes me no doubt that bash has found its one
Beginning with Bash is fairly simple but truly mastering it is a lot more complex. Many subtleties need careful explanation, which is just what Learning the bash Shell provides.
Updated to cover the version 3.0 (not the last one currently), Learning the Bash Shell still remains the reference to quickly learn the language. This book is designed to address casual Linux users who are just above the raw beginner. Experience with a conventional programming language like C is helpful though not strictly necessary.
At the end of the book, you will know all of the most advanced features of Bash illustrated through a very practical approach, the idioms of the language, and how to write maintenable and debugguable scripts (using a custom debugger whose code is presented). To go further, the book Classic Shell Scripting (O’Reilly) could be useful to master the full potential of the command line (awk, pipes, processes).
Well written and very educational, Learning the Bash Shell includes also many exercises with detailed solutions to deepen your comprehension of the text. The book is ideal for novice users, showing how to harness the power of bash within a short time.