UNIX and Linux systems give you a choice of shell, including sh, csh, tcsh, ksh, and bash. They all provide the essential features of a command interpreter and high-level programming language, but there are some important differences among them. Different systems provide one or another of these as the default shell, but most systems support the others and allow you to choose the shell you prefer. This chapter gave you some information that can help you to decide which shell to use as your own.
You now know how to use all the important features and functions that the shell provides. You can use shell filename matching, control standard input and output, construct command pipelines, run commands in the background, assign shell variables, use simple command aliases, and configure your chosen shell. By now, you have probably gotten a good sense of the combination of flexibility and features that makes UNIX such a powerful operating system. The shells described in this chapter are available from the sources listed in Table 4–6.
Command | Name | Source or Links |
---|---|---|
bash | Bourne Again Shell | Standard on Linux systems Also available from the GNU site, at http://www.gnu.org/software/bash/ |
csh | C shell | Included with most distributions |
ksh | Korn Shell | http://www.kornshell.com/ |
pdksh | Public Domain ksh | http://www.math.mun.ca/~michael/pdksh/ |
sh | Bourne Shell | Included with UNIX System distributions |
tcsh | Extended C Shell | http://www.tcsh.org/ |
zsh | Z shell | http://www.zsh.org/ |