Tipos de shells en Linux

Por kevin walker

En Linux y Unix, un shell se refiere a un programa que se utiliza para interpretar los comandos escritos que el usuario envía al sistema operativo. La analogía más cercana en Windows es la línea de comandos DOS. Sin embargo, a diferencia de Windows, Linux y UNIX permite al usuario elegir qué shell le gustaría utilizar.

Shell Bourne

La Shell Bourne original lleva el nombre de su creador en los Laboratorios Bell, Steve Bourne. Fue la primera shell utilizada para el sistema operativo Unix, y ha superado en gran parte la funcionalidad de muchas de las shells más recientes. Sin embargo, todas las versiones de Linux Unix permiten a los usuarios cambiar a la original Shell Bourne, conocida simplemente como "sh", si así lo desean para renunciar a funcionalidades como el completado de nombres de archivo y el historial de comandos que los depósitos posteriores han añadido.

Shell C

La Shell C, como su nombre podría dar a entender, fue diseñada para permitir a los usuarios escribir programas en script de shell con una sintaxis muy similar a la del lenguaje de programación C. Se conoce como "csh".

Shell TC

Shell TC es una expansión de la Shell C. Tiene todas las mismas funcionalidades, pero añade la posibilidad de utilizar pulsaciones de teclado del programa de procesador de palabras Emacs para editar el texto en la línea de comandos. Por ejemplo, los usuarios pueden presionar Esc-D para eliminar el resto de la palabra seleccionada. También se conoce como "tcsh".

Shell Korn

Shell Korn también fue escrita por un programador en los Laboratorios Bell, David Korn. Intenta combinar las características de la Shell C, Shell TC y Shell Bourne en un solo paquete. También incluye la capacidad para crear nuevos comandos de shell para los desarrolladores cuando surja la necesidad.

Se conoce como "ksh".

Shell Bourne-Again

La Shell Bourne-Again es una versión actualizada de la Shell Bourne original creada por la Free Software Foundation en su proyecto de código abierto GNU. Por esta razón, es una shell utilizada ampliamente en la comunidad de código abierto.

Su sintaxis es similar a la utilizada por la Shell Bourne, sin embargo, incorpora algunas de las funcionalidades más avanzadas que se encuentran en las shells C, TC y Korn.

Entre las funcionalidades adicionales que carecía Bourne, está la capacidad para completar nombres de archivos pulsando la tecla TAB, la capacidad de recordar un historial de comandos recientes y la capacidad de ejecutar múltiples programas en segundo plano a la vez.

Se conoce como "bash".