Softpanorama
(slightly skeptical) Open Source Software Educational Society

May the source be with you, but remember the KISS principle ;-)

Softpanorama Search

Learning the Korn Shell

 
Learning the Korn Shell
Bill Rosenblatt / Paperback / Published 1993
Paperback - 363 pages (June 1993)
O'Reilly & Associates; ISBN: 1565920546
Table of contents
A  nice introductory for a seasoned sysadmin, but closer to an intermediate book on Korn shell.

Contents is slightly outdated and covers only ksh88. Still the first edition is somewhat better then the second that was upgraded by a different author.  The key factor for this book is the right definition of intended audience: it is really the best introductory book for students at the university level and professionals. Reader needs to know some Unix (and the reader is expected to know classic Unix utilities) or  programming experience.

Actually it is one of the few shell books that provides a good coverage of usage of pipes in shell scripting, the quintessential feature of the Unix shell. This is the strongest feature of the book. At the same time the books also contains a lot of subtle but important information for example it explains why an alias ll='ls -la  ' (with trailing space) is more useful then without trailing space.  It also covers "IFS" variable, shell functions. In several chapter the authors develop the example of a simple, yes (marginally) useful tool: an analog of C-shell popd/pushd/dirs troika for the ksh. the last chapters contains an example of a really complex (shell debugger) script.

Paradoxically the first edition is considered to be weak by some Amazon.com readers: IMHO this is a nice demonstration of an "Amazon lemmings effect". May be the reason is that the book is too complex to be the first book for learning shell, if you are complete novice (often shell course introduces people to Unix at universities). In such cases  A Practical Guide to Solaris might be a better bet, but still I recommend to buy this book as a second book -- it contains a lot of important information that helps better understand shell and write better shell scripts.  The second edition should be available in April 2002, and with 9 years and 40 pages we can expect a lot of improvements ;-)

Shortcomings of the book include very superficial treatment of .profile and .kshrc files. Some examples also can be made batter (I think that pushd/popd example that authors use can be replaced by something more useful) but that can be said almost about any book.  Neither sed not awk is covered (O'Reilly has a separate book on this subject). At the same time the fact that book does not use awk cripple some examples as it solves several shell problems more elegantly than other built-in UNIX commands.

5 of 5 stars A great book about Korn shell programming, December 3, 2001
Reviewer: A reader from Dallas, TX

I gave it 5 stars partially because it was given just 1 star unjustly by a few reviewers. From a number of complaining reviews, one realizes that the book title is little misleading. It's not a book for a true beginner wanting to read about "simple" examples of shell programs and looking for detailed explanations line by line. This book is concise, to the point, and really explains "Korn" shell's features. Even as early as chapter 4 about Korn shell basics, things are explained that a long-time shell programmers may not know. If you do and have done serious, real world Korn shell programming, you'll appreciate it.

Copyright © 1996-2009 by Dr. Nikolai Bezroukov. www.softpanorama.org was created as a service to the UN Sustainable Development Networking Programme (SDNP) in the author free time. Submit comments This document is an industrial compilation designed and created exclusively for educational use and is placed under the copyright of the Open Content License(OPL). Site uses AdSense so you need to be aware of Google privacy policy. Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.

Disclaimer:

Last modified: November 08, 2008