Most helpful critical review
13 of 17 people found the following review helpful
A required reading for all unix users
on October 29, 2009
This book should be a required reading not only for beginning Linux, Mac OS X, and Unix programmers, but also for most unix users and all system administrators. Yes, this book is very out of date. Some shell and C language syntax in it might not be just out of date, it might be simply invalid under current implementations! Yet, amazingly, possibly +90% of the examples will still work on unix systems, even though the book was written more than 25 years ago. This text is not meant to be a cookbook-type source of shell and C language code snippets. The value of this text lies in its ability to convey the philosophy of the Unix environment, from users' and programmers' perspective. This book illustrates how one can combine the standard unix tools: the shell, the grep, the sed, and the awk languages to solve practical problems. It also introduces the unix toolkit for C programming and the unix documentation system.
Now, I do want to admit that some stuff in this text is embarrassingly out of date. There are some shell commands that will not work on modern Unix implementations. The C code is using the K&R C style. That's still valid syntax, but also relatively archaic and older than what's taught in the second edition of K&R. The desktop calculator written in C with help of lex and yacc is very neat, but the more advanced versions of it will not compile with a modern version of gcc (2.7.x and older). (Finding out why is a nice exercise in debugging C code, and may potentially drive you mad). The signal handling examples for the C language as presented in this book are out of date and unreliable (see APUE on the reasons for this). If the syntax of the code examples was updated to be in touch with 21st century, even without adding any new content to the book, that would still make this book the most awesome beginner Unix text written. Due to being out of date, I think it earns a score somewhere between 3 and 4 stars. This text should be followed by O'Reilly's "Unix Power Tools" and, if you intend to write Unix software, the most recent edition of APUE.