"...welcome to the first installment of "The Essential Linux
Bookshelf", a fortnightly review of those books every Linux
user should own. Each review will follow the same structure. After
an introduction, explaining why I chose the book, comes an outline
of the book itself, followed by an attempt to summarise what makes
this book important. In this first installment, we look at
Kernighan and Pike's "The Unix Programming Environment"."
"We begin, logically enough, with the chapter "Unix for
Beginners". This packs a good amount of introductory knowledge into
one longish chapter, and will repay several readings for the
neophyte. Chapter 2 introduces the Unix file system: its basic
structure, underlying concepts, and the commands that manipulate
it. Though outdated in parts, it remains a good general
"Particularly useful are the shell chapters, 3-5. Here is the
core of the Unix Philosophy, clearly and convincingly expressed.
... These three chapters provide a first-rate tutorial on
effectively using and programming the shell. They need
supplementing only by a good man page, and a bit of practice. The
fourth chapter, on "Filters", is particularly impressive."
"Two solid chapters on C programming, covering respectively
using the Standard C library and Unix System calls, lead up to an
excellent example of Unix C programming in practice. A complete
system is developed, the hoc mathematical programming language,
that also allows the authors to illustrate the usage of lex, yacc
and make, all very useful Unix tools for programming
Some of the products that appear on this site are from companies from which QuinStreet receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. QuinStreet does not include all companies or all types of products available in the marketplace.