Unix Shells

A Unix shell (usually a command line), provides the usual user interface for the Unix operating system. Users direct the operation of the computer by entering commands input as text, for a shell to execute.

The most generic sense of the term shell means any program that users use to issue commands. A number of shells have been developed.

It is called a "shell" because it hides the details of the underlying operating system behind the shell's interface (compared with the kernel, which refers to the lowest-level component of the operating system).

Similarly, graphical user interfaces for Unix, such as GNOME and KDE, are sometimes called graphical shells. On systems using a windowing system, some users may never use the shell directly, although many regular users of a UNIX system still find a modern command line shell much more convenient for many tasks than any GUI application.

The term shell also refers to a particular program, such as the Bourne shell, sh. The Bourne shell was the shell used in early versions of Unix and became a de facto standard; every Unix-like system has the equivalent of the Bourne shell. The Bourne shell program is located in the UNIX file hierarchy at /bin/sh.

The Unix shell was unusual when first created, since it is both an interactive command language and the language used to script the system; it is a scripting programming language.

Which shell am I using?

To find out the current shell, type the following command..

echo $SHELL

Shell customisation: Getting colours from the ls command

I like to install BASH as my preferred shell (see link below) and then get some colour support for the easier identification of files, directories, etc.

In your home directory, edit or create a file called .bashrc ..

cd
vi .bashrc (note the dot before the file name indicating a hidden file)