I received an email from No Starch Press about reviewing this book, and my first reaction was to say no. I assumed this was essentially a book about using Bash, and therefore probably not useful to people reading the Digest.
I read it despite my knee-jerk reaction, and I didn’t need to reject it so suddenly. Almost all of the book will apply to any Unix-like system.
My first real experience with something that wasn’t Windows or a Mac was at a summer job during college, sitting in front of a SparcStation 5 editing files and processing data for real estate. Much of my muscle memory about vi and file manipulation dates from then. This book, even though it’s technically for a different operating system, would have been just what I needed. There’s no system administration in the book, just making your way around a filesystem and the tools you need to get results. It’s the kind of skills I think people lose out on when they boot to a graphical interface in Ubuntu, for example, and then never experience these tools.
Negatives: a few areas won’t be of use to most BSD users, like the section on packaging, or the bash-centric instructions in the shell programming area. There’s the occasional off comment, like that OpenSSH originates from “the BSD project”. There’s surprisingly little of this however, and I had to think a bit to write this negative paragraph.
Positives: The book puts the proper focus on some complex but rewarding aspects of command line use, like using vi (alright, vim) and understanding regular expressions. Much of what it covers is the same material I’ve learned to use over time, and explained to others.
There’s clearly two areas to the book; the first half is about using the command line to accomplish work, and the second is about shell programming. Making it at least through the first half will result in being able to work at a prompt with little issue, with the shell programming a nice bonus. It’s not the normal mix of admin tasks and introductory text; it’s about working at the command line. I imagine giving it to new software testers in a lab, or to a Windows user that has to deal with the occasional unfamiliar environment. There isn’t an equivalent BSD-centric book like this, so it wouldn’t hurt a BSD user, either.
It’s available now at the No Starch website.