The fragmentation of the UNIX marketplace has had its advantages and disadvantages. The advantages came mostly in the early days: lack of standardization and proliferation among technically knowledgeable academics and professionals contributed to a healthy “free market” for UNIX software, in which several programs of the same type (e.g., shells, text editors, system administration tools) would often compete for popularity. The best programs would usually become the most widespread, while inferior software tended to fade away.
But often there was no single “best” program in a given category, so several would prevail. This led to the current situation, where multiplicity of similar software has led to confusion, lack of compatibility, and—most unfortunate of all—the inability of UNIX to capture as big a share of the market as other operating platforms (MS-DOS, Microsoft Windows, Novell NetWare, etc.).
The “shell” category has probably suffered in this way more than any other type of software. As we said in the Preface and in Chapter 1, several shells are currently available; the differences between them are often not all that great.
Therefore we felt it necessary to include information on shells similar to bash. This appendix summarizes the differences between bash and the following:
The standard Bourne shell, as a kind of “baseline”
The IEEE POSIX 1003.2 shell Standard, to which bash adheres and other shells will adhere in the future
The Korn shell (ksh), a ...