What isShell
Shell is a program with special functions. It is an interface between the user and the core program (kernel) of the UNIX/Linux operating system. Why do we say shell is an intermediary between the core program of the system and the user? Readers who have read the introduction to the operating system know that the operating system is a manager and distributor of system resources. When you have requirements, you must submit them to the system. From the operating system perspective, it must also prevent system damage caused by incorrect operations? As we all know, commands on a computer can be converted into binary code through command or program. What about commands? In fact, shell is also a program that reads commands from the input device, converts them into mechanical codes that computers can understand, and then executes them.
Various operating systems have their own shells. For example, in DOS, the shell is command.com commands. For example, different command interpreter programs such as NDOS, 4DOS, and DRDOS in DOS can replace the standard command.com, except for the Bourne shell (/bin/sh) in UNIX) C shell (/bin/csh), Korn shell (/bin/ksh), Bourne again shell (/bin/bash), Tenex C shell (tcsh )... And other shells. In UNIX/Linux, the shell is independent of the core program, making it like an ordinary application, you can modify, update, or add new features without affecting the operating system.