Book HomeBook TitleSearch this book

A.7. bash

bash is probably the most popular "third-party" shell that is available for Unix and other systems. In particular, it is the default shell on GNU/Linux systems. (It also comes on the "freeware" CD with Solaris 8.) You can get it from the Internet, via anonymous FTP to ftp.gnu.org in the directory /pub/gnu/bash. You can also order it from its maker at the address listed here.

The Free Software Foundation
59 Temple Place - Suite 330
Boston, MA  02111-1307
(617) 542-2652
(617) 542-5942 (fax)

http://www.gnu.org

Bash was written by Brian Fox and Chet Ramey. Chet Ramey currently maintains it. Its name is in line with the FSF's penchant for bad puns: it stands for Bourne-Again Shell. Although bash is easily available and you don't have to pay for it (other than the cost of media, phone calls, etc.), it's not really public domain software. While public domain software doesn't have licensing restrictions, the FSF's software does. But those restrictions are diametrically opposed to those in a commercial license:[151] instead of agreeing not to distribute the software further, you agree not to prevent it from being distributed further! In other words, you enjoy unrestricted use of the software as long as you agree not to inhibit others from doing the same. Richard Stallman, the founder of the FSF, invented this intriguing and admirable concept.

[151] Accordingly, the document that spells out these restrictions is called a copyleft.

These days, the ideals of the Free Software and Open Source movements, the GNU project, and the quality of GNU software are all well known. The most popular GNU system is GNU/Linux, which uses the Linux kernel and GNU utilities to make a complete, fully functional, Unix- and POSIX-compatible computing environment.

bash is fully compatible with the 1992 POSIX standard. It has several of the most important Korn shell features and the C shell features that the Korn shell has appropriated, including aliases, functions, tilde notation, emacs and vi editing modes, arithmetic expressions, job control, etc.

The overlap of features between bash and the Korn shell has increased in recent years. It includes many ksh93 features. But it is not an exact ksh clone. The bash FAQ, published monthly by Chet Ramey, lists the following differences between bash and ksh93. Items enclosed in square brackets ([...]) are listed in this book, but not in the FAQ.

The following new things in ksh93 are not available in bash 2.05:

The following new things in ksh93 are present in bash 2.05:

bash has many features of its own that make it a very powerful and flexible environment. Here are some of the highlights:

We're compelled to say that many users prefer bash to the Korn shell. With the increasing popularity of GNU/Linux and various BSD-derived systems, it's not clear which shell has the larger user base. In any case, bash is definitely an excellent choice. We recommend the book Learning the bash Shell by Cameron Newham and Bill Rosenblatt, published by O'Reilly & Associates. (It is based on the first edition of this book.)



Library Navigation Links

Copyright © 2003 O'Reilly & Associates. All rights reserved.