Interfaces de Usuario en los Sistemas Operativos

NOTAS

En la actualidad utilizamos los términos CLI, terminal y consola para referirnos al terminal virtual o emulador de terminal. estos conceptos, haremos usos de estos.

En SO, una interfaz de usuario es simplemente un conjunto de programas permite a un usuario interactuar y comunicarse con una computadora.

Tipos de Interfaces

  • GUI (Graphic User Interface) o Interfaz gráfica: Interfaz basada en elementos visuales tales como ventanas, iconos, botones, menús, cursores, etc., con los que el usuario interactúa para realizar tareas de manera visual e intuitiva.
NOTAS

Existen algunos programas con interfaz gráfica que internamente funcionan con comandos que se le envían a una shell

  • CLI (Command Line Interface), Línea de Comandos o Intérprete de Comandos: Interfaz basada en texto en la que se escriben comandos o instrucciones a una shell para que los interprete y recibir una respuesta de ella

    Aunque requiere el uso de texto, la CLI puede ser más eficiente para usuarios avanzados, principalmente porque permite ejecutar scripts para la automatización de tareas (shell scripting).

    • Terminal o consola: Terminal integrada en el SO, aparece cuando no hay interfaz gráfica

    • Emulador de Terminal o terminal virtual: Interfaz gráfica que simula ser una CLI. Esta hace uso de los diferentes shells.

Qué es una Shell

Una shell es un programa diseñado para recibir comandos de texto a través de una terminal (CLI). Este se encarga de interpretar estos comandos y regresar una respuesta como salida a la terminal.

Shells de Windows

Predeterminadas

  • CMD (Command Prompt) o Símbolo del Sistema: CMD es el terminal predeterminado en versiones antiguas de Windows. Aunque ha sido superado en funcionalidad por PowerShell, todavía está presente por razones de compatibilidad.

  • PowerShell: El shell más avanzado y potente en el entorno Windows. Proporciona capacidades de scripting y administración del sistema más amplias que CMD. Es compatible con todos, sino la mayoría de los comandos de CMD. Además, PowerShell admite ciertos comandos de Bash.

NOTA

Versiones de PowerShell:

  • Windows PowerShell (Powershell 5.1): Versión que viene instalada por defecto en Windows 10 y Windows 11 debido a su estabilidad.

  • PowerShell Core (PowerShell 6.0): Diseñado para ser compatible con Windows, Linux y macOS. Continuó evolucionando, y la última versión estable es PowerShell 7.x, que es compatible con múltiples plataformas.

  • PowerShell (PowerShell 7.0 y posteriores): A partir de la versión 7.0, Microsoft cambió el nombre de PowerShell Core a simplemente PowerShell para reflejar la compatibilidad y la igualdad de características en todas las plataformas.

IMPORTANTE

Debido a las deficiencias de CMD, Microsoft convirtió a PowerShell en su terminal predeterminado en Windows. A pesar de esto, Microsoft no ha removido CMD de Windows ya que diversos programas antiguos dependen de él para su correcto funcionamiento. No obstante, se recomienda utilizar PowerShell en lugar de CMD siempre que sea posible.

Alternativas

  • WSL (Windows Subsystem for Linux): No es un shell por sí mismo, pero proporciona acceso a varios shells de Linux, como Bash, dentro de un entorno Windows.

  • Git Bash: Proporciona una interfaz de línea de comandos para Git, y también incluye un entorno Bash que permite ejecutar comandos Bash y utilizar herramientas de Unix en Windows.

  • Cygwin: Proporciona un entorno similar al de Unix en Windows, incluyendo un shell Bash.

  • Fish Shell: Es un shell que se centra en la facilidad de uso y la interactividad.

Shells en Linux y MacOS

Predeterminadas

  • BASH (Bourne Again Shell): BASH es el shell predeterminado en muchos sistemas Unix, incluyendo Linux y macOS. Ofrece una amplia gama de características y es ampliamente utilizado.

  • Zsh (Z shell): Zsh es otro shell popular que mejora y amplía las características de BASH. Es conocido por su potencia y flexibilidad.

Alternativas

  • PowerShell Core: Es una versión multiplataforma de PowerShell que se ejecuta en SO’s como Windows, Linux y macOS.

  • Fish Shell: Es un shell que se centra en la facilidad de uso y la interactividad.

  • Ksh (Korn Shell): Ofrece características combinadas de shells como Bash y Csh. Es utilizado en algunos entornos empresariales.

  • Csh (C Shell): Un shell que proporciona una sintaxis diferente y algunas características adicionales.

  • Tcsh: Es una versión mejorada de Csh y se utiliza en algunos entornos, especialmente por usuarios que prefieren ciertas características adicionales, como la capacidad de autocompletar utilizando la tecla Tab.

Referencias




    Enjoy Reading This Article?

    Here are some more articles you might like to read next:

  • Introducción a los Comandos
  • Introducción a Linux
  • Introducción a los Sistemas Operativos
  • Vim CheatSet
  • Sistemas Numéricos
  • Codificación de Carácteres