General Shell InformationYahoo's shells page lists descriptions of and other links to a number of different kinds of shells. How to write a shell script details how to write simple bourne shell scripts. The adventure shells, ash and advsh, are more games than shells for serious use. Ash is a bourne shell script, while advsh is a C program. They model moving around the filesystem on the early UNIX game adventure. Csh-Like ShellsAn enhanced version of C shell, tcsh was created to fix many bugs with the original BSD code and to provide visual editing to C shell users. zsh, while probably more bourne than C like, is a shell that combines many of the useful features of ksh, bash, and tcsh. This shell is now maintained by the members of the zsh-workers@math.gatech.edu mailing list so mail on any issues (bug reports, suggestions, complaints, etc.) related to the development of the shell should be sent there. There is also a list just for announcements and one for user discussion. Instructions on how to subscribe to any of these lists can be found in the FAQ |
Bourne-Like ShellsBourne shell, sh, was one of the first UNIX shells. It has a very strong powerful syntactical language built into it, with all the features that are commonly considered to produce structured programs; it has particularly strong provisions for controlling input and output and in its expression matching facilities. Bourne shell's main drawback is that it makes nearly no concessions to the interactive user like command line editing and job control. Korn shell, ksh, was bourne based but took many features from csh that made interactive use easier. It was written by AT&T so it is unfortunately commercial and has to be purchased. A free version of ksh, pdksh, was therefore written. GNU bash, originally written by Brian Fox of the FSF, is a free bourne derivative available from the GNU archives. As explained in the FAQ, bash contains a number of enhancements over other system V shells like ksh and the original sh. Features geared toward interactive use include command line editing, command history, job control, aliases, and prompt expansion. Programming features include additional variable expansions, shell arithmetic, and a number of variables and options to control shell behavior. Bugs should be reported to bash-maintainers@ai.mit.edu and philosophical bugs should be reported to bug-bash@ai.mit.edu or posted to gnu.bash.bug. What first started out as a port of bash to Plan 9, rc was written by Tom Duff and later re-implemented by Byron Rakitzis under UNIX. Having been a complete rewrite, rc ended up smaller, simpler, more regular, and in most peoples opinion a much cleaner shell. The shell es is built off of rc, but allows the user to redefine low level functions. |