When you first log into a Unix system, you are presented with something that looks like the following:
This is called a prompt. As its name would suggest, it is prompting you to enter a command. Every Unix command is a sequence of letters, numbers, and characters.character There are no spaces, however. Thus, valid Unix commands include mail, cat, and CMU_is_Number-5. Some characters aren't allowed--that's covered later. Unix is also case-sensitive. This means that cat and Cat are different commands.
Case sensitivity is a very personal thing. Some operating systems, such as OS/2 or Windows NT are case preserving, but not case sensitive. In practice, Unix rarely uses the different cases. It is unusual to have a situation where cat and Cat are different commands.
The prompt is displayed by a special program called the shell. The MS-DOS shell is called COMMAND.COM , and is very simple compared to most Unix shells. Shells accept commands, and run those commands. They can also be programmed in their own language, and programs written in that language are called ``shell scripts''.
There are two major types of shells in Unix, Bourne shells, and C shells. Bourne shells are named after their inventor, Steven Bourne. There are many implementations of this shell, and all those specific shell programs are called Bourne shells. Another class of shells, C shells (originally implemented by Bill Joy ), are also common. Traditionally, Bourne shells have been used for compatibility, and C shells have been used for interactive use.
Linux comes with a Bourne shell called bash , written by the Free Software Foundation. bash stands for Bourne Again Shell, one of the many bad puns in Unix. It is an advanced Bourne shell, with many features commonly found in C shells, and is the default.
When you first login, the prompt is displayed by bash, and you are running your first Unix program, the bash shell.