Los conceptos de:
- CLI,
- Terminal.
- Consola.
- y Shell,
suelen utilizarse como sinónimos, pero no son lo mismo:
CLI
(Command-Line Interface)- Es un paradigma de interfaz de usuario, que permite a los usuarios ejecutar comandos ingresándolos en forma de texto y recibir respuestas del sistema también en forma de texto.
La contraparte de CLI es la GUI
(Graphical User Interface / interfaz gráfica de usuario) que consiste en proporcionar un entorno visual sencillo para permitir la comunicación con el sistema operativo.
- Terminal
- Es un programa que simula una consola antigua dentro de un entorno de sistema operativo moderno.
- Consola
- La consola es el medio por el cual accedemos y utilizamos la CLI.
Consola y Terminal son similares, pero tradicionalmente, la consola se refiere a un entorno físico donde los usuarios interactúan directamente con el sistema.
- Shell
- Es un programa que procesa comandos (un intérprete) para mostrar los resultados en la salida del terminal. Ejemplos de shells incluyen
Bash
en sistemas Unix/Linux yPowerShell
en Windows.
Shells
A continuación puedes ver algunos de los shells más utilizados y los sistemas operativos con los que están asociados.
Shell | Sistema Operativo | Descripción |
---|---|---|
Sh (Bourne Shell) | Unix | Fue el shell original de Unix y es el predecesor directo de Bash. |
Bash (Bourne Again Shell) | Linux, Unix, macOS | Es el shell estándar en la mayoría de distribuciones de Linux y macOS. |
Cmd.exe | Windows | El shell de línea de comandos tradicional en sistemas Windows antes de PowerShell. |
PowerShell | Windows, Linux, macOS | Desarrollado por Microsoft, es potente en la automatización y administración de sistemas. |
Otros shells
Cada shell tiene sus propias características y ventajas que pueden ser preferidas según las necesidades específicas del usuario y la naturaleza del trabajo a realizar.
Shell | Sistema Operativo | Descripción |
---|---|---|
Zsh (Z Shell) | Unix, Linux, macOS | Es conocido por su mejoras de facilidad de uso y su capacidad de personalización. |
Csh (C Shell) | Unix, Linux | Inspirado en la sintaxis del lenguaje C, popular entre ciertos usuarios por este motivo. |
Ksh (Korn Shell) | Unix, Linux | Combina características de otros shells y fue destinado a ser más eficiente y poderoso. |
Fish | Unix, Linux, macOS | Destacado por su interfaz de usuario amigable y características avanzadas de autocompletado. |