Edit: In the linked duplicate question, it's answered that shell = command line interepreter. Tanenbaum says it's not so. Hence the linked question doesn't solve my problem: why does Tanenbaum say so and what kind of shell does he imply?Reading Andrew S. Tanenbaum's modern Operating Systems, 3rd ed., on page 10, under 1.2.2, I see the following:These primitive control cards were the forerunners of the modern shells and command-line interpreters.I've been using Linux daily for years, and am familiar with the concept of a command line interpreter, i.e. Bash, Sh, Tcsh, Zsh, Csh. Now, I've always been sure that shell equals Bash equals command line interpreter. Also, I understand that the commands I enter are ran and the results returned to me by a concrete executable, that belongs to the list above. However, Tanenbaum lists these as separate categories.Thus, the question: what exactly is a shell, how is it different from a command line interpreter, or maybe it's only in the context of the book that these two concepts differ? Maybe it's the GUI shell that's being mentioned here?
How is a shell different from a command interpreter?
shell;command line