Bash, o Bourne Again Shell, es lo que viene preinstalado en la mayoría de las distribuciones de Linux. Sin embargo, no es el único caparazón que existe. Hay varios otros para probar. Aquí hay seis shells alternativos que pueden reemplazar a bash. Cada uno de ellos tiene sus pros y sus contras, así que tienes que probarlos y ver cuál es el mejor para ti.
1. sh (o la concha de Bourne)
La concha de Bourne, llamada así por su creador Stephen Bourne, fue una de las primeras conchas de la historia. Se podría decir que se utilizó como base sobre la que se crea Bash. A veces los usuarios confunden ambos y piensan que son iguales cuando no lo son. Es cierto que muchos scripts .sh también se ejecutarán en Bash, porque Bash incluye mucho de Sh, pero lo contrario no es cierto.
Puedes pensar en Sh como el predecesor de Bash. No tiene tantas funciones, pero está más estandarizado que Bash.
2. Guión
Dash es esencialmente Bash en los sistemas Debian. Si está ejecutando una distribución basada en Debian, es probable que esté ejecutando Dash, no Bash. Sin embargo, debido a las complejidades de usar Dash como shell predeterminado, Ubuntu (una distribución basada en Debian) decidió usar Bash para scripts interactivos, no Dash como shell predeterminado.
Dash carece de muchas de las funciones de Bash, como la finalización de pestañas y el historial de comandos, pero es más rápido y de tamaño mucho más pequeño (100K frente a 900K), lo cual es un factor si lo está ejecutando en una computadora no tan poderosa.
3. csh (o C Shell)
Los lenguajes de programación C y C++ eran bastante populares, y gran parte del propio Linux está escrito en ellos. Esta es la razón por la que no sorprende que haya un shell, el C Shell o Csh, que usa el modelo de sintaxis C. Si domina C, este shell le resultará natural.
Sin embargo, el shell de Csh tenía bastantes errores y pocas características. Es por eso que el caparazón Tcsh llegó a la escena. Tcsh solucionó la mayoría de los errores y agregó nuevas funciones, como finalización de comandos, control de trabajos, corrección ortográfica, etc. Desafortunadamente, Tcsh y Bash son muy diferentes, lo que significa que no puede ejecutar scripts de Bash en Tcsh y viceversa.
4. ksh (o caparazón Korn)
Ksh, o el caparazón Korn (llamado así por su creador David Korn), se introdujo casi al mismo tiempo que Tcsh, pero a diferencia de Tcsh, es compatible con Sh y Bash. Fue un shell propietario de AT&T hasta el año 2000, y es por eso que no se volvió tan popular. Ksh agrega más funciones a Sh, como la aritmética de coma flotante, el control de trabajos, el alias de comandos y la finalización de comandos.
5. zsh (o carcasa Z)
Los shells enumerados hasta ahora se crearon en su mayoría en 1970. Las computadoras han recorrido un largo camino desde entonces, y esto también exige nuevos shells. Una de las nuevas carcasas populares es la carcasa Z, o Zsh. Fue creado por Paul Falstad en 1990.
Tiene las funciones de Bash y algunas más, como archivos de inicio, visualización de inicio/cierre de sesión y funciones de programación integradas como código de bytes, soporte para notación científica en sintaxis, aritmética de coma flotante, comentarios de cierre, concepto, variable, funciones, e índice clave. Si está buscando un caparazón más avanzado, pruebe el caparazón Z.
6. pescado
La búsqueda de conchas más modernas no terminó con Fish. El nuevo siglo vio nuevas conchas, como Fish (o Friendly Interactive Shell). Fue lanzado en 2005 y no se basa en el shell Sh. Su aspecto más distintivo es que tiene una sintaxis de línea de comandos única que está diseñada para ser más amigable para los principiantes. También tiene algunas características interesantes, como sugerencia automática, selección con las teclas de flecha, compatible con el portapapeles X, 256 colores de terminal, etc.
El principal inconveniente de Fish es que es muy diferente de Bash y otros shells basados en Bourne. Como resultado, no puede transferir el código (y el conocimiento) de Fish a Bash y Sh.
Entonces, ¿qué caparazón es el mejor? Desafortunadamente, esta pregunta no puede ser respondida. Todos ellos tienen sus ventajas y desventajas, y realmente depende de para qué lo necesites. Pero ahora que conoce los pros y los contras de cada uno de estos seis shells alternativos, le será más fácil decidir en qué situación qué shell debe usar. Aunque después de todo, hablando honestamente, esta elección es en gran medida una cuestión de preferencias personales: yo mismo me quedo con Bash, y estoy de acuerdo con eso. ¡Bash es el shell predeterminado por una razón que ya conoces!