Terminal, Command Line, Console, Shell

Cuando empecé a escuchar términos como linea de comandos, command line interpreter (CLI), shell (zsh, bash, fish), terminal, emulador de terminal, consola, prompt. Pensé que algunas significaban lo mismo, y otras no sabía que eran. Me resultó confuso distinguir entre cada una de ellas. Aquí te explicaré qué significan.

Terminal

Una terminal (en su expresión más básica) es un dispositivo físico de input y output. Ahora se utiliza como sinónimo de emulador de terminal.

Terminal Emulator

Linea de comandos

La linea de comandos o command line interpreter, en términos simples es un tipo de interfaz que acepta como input comandos para luego ejecutarlos.

Prompt

Es el caracter que se encuentra en la linea de comandos, para indicar que está a la espera de un comando.

Console

Shell

La shell (cubierta/cáscara en español) es una linea de comandos. Una implementación concreta de una línea de comandos. Existen muchas shells, cada una con sus diferentes características. Las hay para cada OS, windows (cmd, poweshell, gitBash), Linux y Unix (Bash, Zsh, Fish).

Sub

Otra cosa