
623
This is the Title of the Book, eMatter Edition
Copyright © 2006 O’Reilly & Associates, Inc. All rights reserved.
Chapter 6
6
The Bash Shell and Korn Shell
The original Bourne shell distributed with V7 Unix in 1979 became the standard
shell for writing shell scripts. The Bourne shell is still to be found in /bin/sh on
many commercial Unix systems. It hasn’t changed that much since its initial
release, although it has seen modest enhancements over the years. The most
notable new features were the CDPATH variable and a built-in test command
with System III (circa 1980), command hashing and shell functions for System V
Release 2 (circa 1984), and the addition of job control features for System V
Release 4 (1989).
Because the Berkeley C shell (csh) offered features that were more pleasant for
interactive use, such as command history and job control, for a long time the stan-
dard practice in the Unix world was to use the Bourne shell for programming and
the C shell for daily use. David Korn at Bell Labs was the first developer to
enhance the Bourne shell by adding csh-like features to it: history, job control,
and additional programmability. Eventually, the Korn shell’s feature set surpassed
both the Bourne shell and the C shell, while remaining compatible with the
Bourne shell for shell programming. Today, the POSIX standard defines the “stan-
dard shell” language and behavior based on the System