In brief, you cannot interact with the core functionality of Linux—called its kernel—without a shell. As I mentioned earlier in this chapter, a shell is to the Linux kernel as Command.com is to DOS—except that with Linux, you have the choice of more than one shell.
A Linux shell is a program that provides a command-line interface between a user and the kernel. The kernel contains all the routines needed for input and output, file management, and other core functionality. A shell enables the user to access these routines from the command-line prompt that it provides.
In addition, a shell includes a language used for programming, which—in the context of shells—is called shell scripting. (For more information on shell scripting, see Chapter ...