Most people know of shells as small protective coverings for certain animals, such as clams, crabs, and mollusks. You may also find a shell on the outside of an egg, which I highly recommend you remove before eating. In the computer science world, however, a shell is a software program that interprets commands from the user so that the operating system can understand them and perform the appropriate functions.
The shell is a command-line interface, which means it is soley text-based. The user can type commands to perform functions such as run programs, open and browse directories, and view processes that are currently running. Since the shell is only one layer above the operating system, you can perform operations that are not always possible using the graphical user interface (GUI). Some examples include moving files within the system folder and deleting files that are typically locked. The catch is, you need to know the correct syntax when typing the commands and you may still be prompted for a password in order to perform administrative functions.
Shells are most commonly associated with Unix, as many Unix users like to interact with the operating system using the text-based interface. Two common Unix shells are the Bourne shell and the C Shell, which is used by BSD. Most Unix systems have both of these shells available to the user. Windows users may be more familiar with DOS, the shell that has long been included with the Windows operating system. Most computer users have no need to use the shell interface, but it can be a fun way to perform functions on your computer, as well as impress your friends.