Terminal, Console, Shell — What do they all mean?

A Teletype Model 33 ASR teleprinter, with punched tape reader and punch, usable as a computer terminal, on display at the Computer History Museum in Mountain View, California, US — Source: Arnold Reinhold

Terminal, Console, Shell — We’ve all heard these terms, but do you know the difference between them?

The word Terminal comes from terminate, as in the “terminal” end of a communications process.

You may have heard the term ‘dumb terminal’ referring to basic text-based computer that is communicating with another system that’s doing all the hard work — a server or mainframe.

The first type of terminal was known as a teletypewriter (TTY). Instead of having a screen, a TTY was essentially a smart typewriter/printer combo.

When you typed the input was sent to a computer as well as being typed on the page. The computer’s output was then typed below.

In fact, modern Linux still refer to their dedicated full screen terminals as TTYs.

Terminals themselves aren’t clever in any way though. They don’t process your commands, read files. Their purpose is to read your text input, usually from a keyboard, and display the response.

The word console typically referring to physical device that had a screen and a keyboard. Its sole purpose was to run terminal software to accept commands, communicate with another system, and display the results on screen.

But it was dedicated hardware.

DEC VT100 terminal on display at the Living Computer Museum, Seattle, Washington, US (apparently connected to the museum’s DEC PDP-11/70) — Source: Jason Scott

Now-a-days, terminal and console are essentially the same. We have software that acts as both the terminal and console.

We no longer need dedicated console or TTY hardware as software can do it as just another application on your computer.

A shell is what does most of the heavy lifting. It is the software that the terminal/console will communicate with.

It accepts commands, processes them (either internally or by running other software), and then returns the output to the terminal/console, which then displays it.

Examples of shell software:

  • bash, fish, zsh, ksh, sh, tsch
  • PowerShell, pwsh
  • cmd, yori, 4dos, command.com

If you’ve used the command line on any modern operating system, you’ve probably used one of these.

Bash shell running in the Gnome terminal application under Ubuntu 20.04.2 LTS — Screenshot by author




🖥️ Full stack developer

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

How to: pgAdmin with Open ID Connect in Docker-Compose


Introducing Text2Summary: Text Summarization on Android ( With TF-IDF )

Apache Kafka Confluent cluster Dockerization (Part-1)

Playing with Git and Github

LSP: Liskov Substitution Principle a.k.a Design By Protocol

Weekly Digest #79

Secure your credentials in Google Cloud Functions with Secret Manager

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Jordan Hall

Jordan Hall

🖥️ Full stack developer

More from Medium

Auto muting when spotify plays an advertisement

Command-Line Interface — Homebrew

How to install ubuntu in windows 11

Five Linux commands to make Web Developer’s Life Easy