What's "terminal" about CMDs\Consoles? Why are they called this way?

2

I'm trying to figure out why are CMDs\Consoles\CLIs\command-lines are often called "Terminal"? I know that they are first and foremost shells for an OS... And thus usually seen as a layer and not as a whole-unit (such as terminal PC from which influence a server via a shell session)... I mean, we can direct a server from them as well (as by SSH for example) but we can do more things such as navigating in our own PC even totally offline (as in MS DOS or Powershell) So, can someone please detail in simple words why are these called "Terminals? Maybe there are extra reasons I missed?

JohnDoea

Posted 2015-12-23T07:02:55.650

Reputation: 1 029

Note that the "shell" and the "terminal" are usually separate components – the former just interprets commands, the latter draws the shell's output on screen. When you ssh, you're using a local terminal to talk to a remote shell. On Windows, "CMD" (as in cmd.exe) is a shell, PowerShell is also a shell, and the OS itself provides a terminal (usually called Console since it works slightly differently from what Unix calls "terminals"). On Linux, bash is a shell, and xterm is a popular terminal. – user1686 – 2015-12-23T07:18:38.397

Answers

3

The terms Terminal and Console, date back to the mainframe era. A Terminal was a device with a keyboard and monitor that was hooked to the mainframe and provided a user with Console access (a shell with which the operator could interact). Hardware terminals and consoles are still widely used for "headless" devices like network equipment and server management.

In modern parlance, they are used pretty much interchangeably, but it is notable that linux "Terminal" programs are Terminal Emulators (usually based on the Vermont Terminal 100 [VT100] spec), running a shell like bash or sh.

Edit: Oh, and from a purely etymological standpoint, the reason they used the word terminal, is because on a mainframe's wiring/network topology, the mainframe is at the center, and all the terminals connect to it, so its a Star Topology. As a result, the terminal is an isolated end-point on the network; ie nothing connects through it. So it is a terminus; an end.

For Console, per Merriam-Webster, it is an accepted term for an instrumentation panel.

a combination of readouts or displays and an input device (as a keyboard or switches) by which an operator can monitor and interact with a system (as a computer or dubber)

Hope that helps clear things up.

Frank Thomas

Posted 2015-12-23T07:02:55.650

Reputation: 29 039

About the row when you mentioned the term "Terminus", if we would call A Linux OS's terminal the "Terminal-CMD" the name was more "Realistic" in that it would describe both groups of actions that are done in there? 1)) Showing system output in it's terminal place. 2)) Accepting commands from to the user, in that "terminus" to operate the system in any potential way it offers. – JohnDoea – 2015-12-23T08:00:20.463

well, by definition a terminal hosts a shell, but that shell does not need to be command driven, and could implement a GUI, as X does in the linux shell, so no, i wouldn't choose that name. its a terminal emulator with a console running a shell. Terminus means "End", and just refers to the devices position in the network. Keep in mind, all of this is largely academic these days. You will probably never need to make a decision that hinges on the differences between these terms and how they relate. – Frank Thomas – 2015-12-23T08:16:12.063

Indeed I know Terminus is in singular "End"... I learned much on Axon's terminals... I am just looking for a general definition that could reflect the vast majority of text-books... From what you wrote, I could pick the definition: "A terminal emulator (That shows system output) with a console that runs a shell". I hope that one works... – JohnDoea – 2015-12-23T08:43:57.170

yes, that is the correct relationship. It is hard to conceptualize these days, since the practical difference is so minimal in our thick-client world, and everything kind of gets mushed together. – Frank Thomas – 2015-12-24T03:26:31.137

0

Remember that computers always used to be terminals - in that, they were the end of the line, you had a simple input device (keyboard) and a very basic output (CLI graphics). They very much were the end of the line, there was little else they could do.

What you're actually referring to are 'terminal emulators', although the emulator part is often missed, the name has stuck around.

There's more information on Wikipedia

Jonno

Posted 2015-12-23T07:02:55.650

Reputation: 18 756

-1

In the seventies and ealy 1980s, computers were things that lived in Air-conditioned rooms, with a slew of white coats in attendence. Users sat at all sorts of Telecom Suplus stuff, like teletypes (basically a typewriter that sends SMS messages as well), and terminals (television screens that acted as line printers).

So command.com and cmd.exe emulate teletype programs. That means you could run these on a typewriter-style session. Edlin is a text editor that runs in a teletype session.

Terminals allow one to reposition the cursor anywhere on the screen, so you could get text-windowing, like Edit or MSD. There's programs like CICS which give quite usable screens with very narrow band width.

Fancier computers allow you to run either teletype sessions, like command.com or cmd.exe, and terminal console programs (like edit or msd), in a text window, but because they were teletype or terminal sessions, they still keep that name.

A shell is a wrapper program. Command.com and bash are shells, that mean you don't have to do things like supply the full path to every program you run, and interpret strings to commands. There are terminal shells as well, such as XTree and NC. Most users in the 1980s used things called menu programs, where you picked an option off a menu, and it ran the matching batch file.

Programs like edlin and debug are teletype programs, debugging particulary, in that the connection between the computer running the program and the listener might be some thing like a 9-pin serial cable.

wendy.krieger

Posted 2015-12-23T07:02:55.650

Reputation: 660