Much of the everyday work performed on your Freedom server is done in a command line interface called a shell. A shell is a command interpreter whose main job is to receive commands and pass them to your virtual server for execution. Some shells offer useful and timesaving features. The default shell given to your administrative and root user (if you have one) is the tcsh shell. You can choose to use any of the shells discussed below, or even install other shells that aren’t mentioned here from the Software Application Library.
The following shells are preinstalled on Freedom servers:
C shell (csh), a popular command interpreter that has its origins in Berkeley UNIX, is particularly suited for interactive use. It offers many features, including an ability to recall and modify previous commands, a facility for creating command shortcuts, shorthand notation for pathnames to home directories, and job control.
tcsh, an enhanced version of csh, is almost entirely upward compatible with csh, so whatever you know about the C shell you can apply immediately to tcsh. But tcsh goes beyond csh, adding capabilities like a general purpose command line editor, spelling correction, and programmable command, file, and user name completion.
Bourne shell (sh). The Bourne shell is the oldest of the currently popular shells and is the most widely available.
Bourne Again shell (bash). An extension of the Bourne shell, bash includes such enhancements as command line editing, key bindings, integrated programming features, command completion, and control structures.
Korn shell (ksh). Provides all the features of csh and tcsh together with a shell programming language similar to that of the original Bourne shell.
To determine which shell you are currently using, type the following command at your virtual server's command prompt:
> echo $SHELL
Your choice of shell is basically a matter of taste. If you are a C programmer, you might feel more comfortable with a C-like shell such as tcsh. If you've come from Linux or are new to a UNIX command line interface you might try bash. The point is that each shell has unique properties that may or may not work with your preferred working environment, and that you have a choice of which shell to use.