If you really want to know your way around a Linux box, this is the book to get. It gently exposes you to the environment in very digestible nuggets. Starting with “What is a Shell” and typing your first simple commands all the way to writing shell scripts utilizing IF statements, CASE statements and Loops, this book will take you as far as you want to go. It’s written in a conversational style that makes it quick to read & understand. There’s also some fun geek-related quotes you won’t want to miss…
Have you ever noticed in the movies when the “super hacker”—you know, the guy who can break into the ultra-secure military computer in under 30 seconds—sits down at the computer, he never touches a mouse? It’s because movie makers realize that we, as human beings, instinctively know the only way to really get anything done on a computer is by typing on a keyboard.
For the beginner, you want to take your time with Part 1: Learning the Shell. It lays a solid foundation for you to work from in later chapters. Understanding the basics, especially the location of files within the file system itself, will allow you to move through the latter section more easily. And pay attention to the tips that are presented to you. I still consider myself a N00b, but I thought I knew precisely what symbolic links were… but I was wrong. This book taught me a few new things along the way.
For the intermediate or advanced user, you may find all you need online and need not bother with buying a book. I like consolidated information though (I have enough tabs open in Firefox and Chrome already) and if you’re intermediate and looking to write shell scripts and possibly automate some system maintenance, I think you’ll find this book useful. It’ll give you insights and examples that you can build off of.
Another quote from the author that I like explains it like this:
Most computer users today are familiar with only the graphical user interface (GUI) and have been taught by vendors and pundits that the command line interface (CLI) is a terrifying thing of the past. This is unfortunate, because a good command line interface is a marvelously expressive way of communicating with a computer in much the same way the written word is for human beings. It’s been said that “graphical user interfaces make easy tasks easy, while command line interfaces make difficult tasks possible,” and this is still very true today.
This is true of Windows as much as it is of Linux… so get your hands on the keyboard and enjoy!