Series: In a Nutshell (O'Reilly)
Paperback: 354 pages
Publisher: O'Reilly Media; 3 edition (April 8, 2005)
Product Dimensions: 7 x 0.9 x 9.2 inches
Shipping Weight: 1.2 pounds (View shipping rates and policies)
Average Customer Review: 4.2 out of 5 stars See all reviews (51 customer reviews)
Best Sellers Rank: #146,302 in Books (See Top 100 in Books) #10 in Books > Computers & Technology > Operating Systems > Unix > Shell #11 in Books > Computers & Technology > Programming > APIs & Operating Environments > Unix #45 in Books > Computers & Technology > Operating Systems > Macintosh
The bash shell is now the most common and featureful command shell in the Unix world. It's full capability certainly isn't obvious to a beginner facing a command prompt, but is well worth exploring. This book is a great place for the novice to start. The first chapter addresses the most fundamental question: just what is a command shell?The ideal reader already knows at least the names of the emacs and vi editors. That much helps understand the many features and two distinct feature sets available for command line editing. I consider fancy command line editing over-rated for fluent typists, but it's there in the second chapter for all who want it and anyone can benefit from at least a little knowledge of it. After that successive chapters pull the reader deeper into the bash feature set: aliases and shell variables, scripting and shell programming, and debugging when the shell programs or functions go awry.Since this book is aimed at the novice, Newham and Rosenblatt skip lightly over a few of the more advanced subjects. For example, exceptions and trap handling get only cursory treatment, since they get into deep weirdness very fast. The authors are honest about this shallow treatment, though, and give enough information for a novice to recognize the basics and look them up in more advanced references.This is nicely organized for the self-taught student. As a result, it's not laid out as a programmer's reference manual - anyone who wants that kind of reference just isn't looking at the right book. For its intended reader, though, it's a great book. It gets readers off to a fast start, and lets them decide just how much they want to bite off at a time. I recommned it very highly.//wiredweird
Cameron Newham's LEARNING THE BASH SHELL is an introduction to the command-line interface most commonly encountered today in server administration and in the terminal application of personal computers running Linux and Mac OS X. As I write this, the most recent edition is the 3rd, published in 2005, which describes bash 3.0. Newham explains such things as how programs communicate with the shell, keyboard navigation commands and shell customization. While he uses some of the old standard Unix programs (e.g. grep, sort) in examples, this is not a book about how to wield the power of Unix-like systems in general. Also, shell scripting is given only a brief mention, and those wanting to write powerful scripts will have to turn to another book (like O'Reilly's Classic Shell Scripting.I have been using bash for nearly all file management and system administration tasks since 2002, and I still learned a few things here. However, this book is sorely in need of a new edition. The 3rd edition still assumes that the typical newcomer to bash is on a multi-user UNIX system, has access to a Postscript printer from the command line and a magnetic tape drive, and has probably used another shell like tcsh. Surely, even by the 3rd edition's publication date of 2005, most people interested in bash were people who had installed Linux on their personal computers. Also, bash is now at version 4.0, and readers would benefit from a small presentation of what has changed.
Take some time to review this book before you purchase. I was expecting a comprehensive book explaining how to write bash scripts in 2015. What I ended up purchasing seems to be a book written 20+ years ago with a few minor updates here and there.I will say that the book probably was very useful 10+ years ago but reading it today seems out of date and confusing. There is definitely a lot of useful material in the book and I learned a few things here and there in the few chapters I read, but it was an exhausting read. A lot of the content just doesn't apply to my use case. I am a developer who grew up using Windows and recently started doing Linux Server work. I picked up a few books on Ansible, Maven, Jenkins, etc., and decided a book on Bash might be a good place to start to bring myself up to speed on the Bash console. But the book reads as if it is a user manual for a user in the 1990s, working on a shared office computer. It warns you about using too much of your allotted resources, suggests you contact the admin to install Bash for you, etc. I'll admit at first it was a bit funny to read but eventually it just became tedious.I'm sure further in the book there might have been more useful material but eventually I just got frustrated and gave up. If your use case is similar to mine, and not someone in the early 90's trying to familiarize yourself with the new office computer, perhaps look elsewhere.
I have been using UNIX for a few years, nothing too in depth, but I can get around. I recently went through the book Learning the UNIX Operating System, Fifth Edition without any trouble and then moved onto the book in question. Starting with the third chapter I felt completely lost and had no idea what the heck the author was talking about. The examples are vague and unhelpful. I kept reading, however, and into the fourth chapter the confusion persisted. Perhaps if the author decided to include some hands-on examples and/or exercises I might understand the concepts better.I could see this being a worthwhile book if you know how to program already, but if you are just familiar with UNIX navigation, commands, (ie. anything in the Learning the UNIX Operating System, Fifth Edition book) then you might be out of luck.
Learning the bash Shell: Unix Shell Programming (In a Nutshell (O'Reilly)) Mastering Unix Shell Scripting: Bash, Bourne, and Korn Shell Scripting for Programmers, System Administrators, and UNIX Gurus Shell Programming in Unix, Linux and OS X: The Fourth Edition of Unix Shell Programming (4th Edition) (Developer's Library) Command Line Kung Fu: Bash Scripting Tricks, Linux Shell Programming Tips, and Bash One-liners bash Cookbook: Solutions and Examples for bash Users (Cookbooks (O'Reilly)) UNIX in a Nutshell: System V Edition: A Desktop Quick Reference for System V Release 4 and Solaris 2.0 (In a Nutshell (O'Reilly)) UNIX Shell Scripting Interview Questions, Answers, and Explanations: UNIX Shell Certification Review Unix in easy steps: Commanding the BASH shell Learning: 25 Learning Techniques for Accelerated Learning - Learn Faster by 300%! (Learning, Memory Techniques, Accelerated Learning, Memory, E Learning, ... Learning Techniques, Exam Preparation) Raspberry Pi 2: Raspberry Pi 2 Programming Made Easy (Raspberry Pi, Android Programming, Programming, Linux, Unix, C Programming, C+ Programming) Programming #8:C Programming Success in a Day & Android Programming In a Day! (C Programming, C++programming, C++ programming language, Android , Android Programming, Android Games) Programming #57: C++ Programming Professional Made Easy & Android Programming in a Day (C++ Programming, C++ Language, C++for beginners, C++, Programming ... Programming, Android, C, C Programming) Linux: Linux Bash Scripting - Learn Bash Scripting In 24 hours or less Learning the bash Shell, 2nd Edition UML 2.0 in a Nutshell (In a Nutshell (O'Reilly)) VBScript in a Nutshell (In a Nutshell (O'Reilly)) DOS: Programming Success in a Day: Beginners guide to fast, easy and efficient learning of DOS programming (DOS, ADA, Programming, DOS Programming, ADA ... LINUX, RPG, ADA Programming, Android, JAVA) ASP.NET: Programming success in a day: Beginners guide to fast, easy and efficient learning of ASP.NET programming (ASP.NET, ASP.NET Programming, ASP.NET ... ADA, Web Programming, Programming) C#: Programming Success in a Day: Beginners guide to fast, easy and efficient learning of C# programming (C#, C# Programming, C++ Programming, C++, C, C Programming, C# Language, C# Guide, C# Coding) FORTRAN Programming success in a day:Beginners guide to fast, easy and efficient learning of FORTRAN programming (Fortran, Css, C++, C, C programming, ... Programming, MYSQL, SQL Programming)