Bash (Bourne-Again shell) es un intérprete de línea de comandos de tipo script. Este es el shell de Unix que es parte del proyecto GNU esta basado en el shell Bourne (bsh o simplemente sh en muchas versiones de UNIX).
Bash trae muchas mejoras, incluyendo el shell Korn (ksh) y el shell C (csh). Bash es un software libre publicado bajo licencia GPL.
Este es el intérprete predeterminado en muchos sistemas Unix gratuitos, especialmente en sistemas GNU / Linux. También es el shell predeterminado de Mac OS X. El proyecto Cygwin lo trajo a Windows por primera vez y en Windows 10 es una opción del sistema operativo.
Bash es una implementación completa de la especificación de shell POSIX, pero con edición de línea de comandos interactiva y control de trabajos en las arquitecturas que lo admiten, funciones csh y muchas otras características.
Nueva versión de Bash
Hace pocos días el equipo de a cargo del desarrollo Bash realizo el anunció de la disponibilidad del primer lanzamiento público de Bash 5.0, la quinta versión principal del shell Unix del proyecto GNU.
Esta versión corrige varios errores importantes en bash-4.4 e introduce varias características nuevas.
En un mensaje de la lista de correo del Proyecto GNU, Chet Ramey, el encargado de Bash explica que las correcciones de errores más importantes son una revisión de la resolución de la variable nameref y una serie de errores de desbordamiento descubiertos a través de fuzzing.
Principales novedades
Las nuevas características más notables incluyen varias variables de shell nuevas tales como BASH_ARGV0, EPOCHSECONDS y EPOCHREALTIME.
Los dos últimos son similares para obtener el número de segundos desde Epoch Unix (Epoch Unix), la única diferencia es que EPOCHREALTIME es un punto flotante con una granularidad de microsegundos.
Tengan en cuenta que la época representa la fecha inicial a partir de la cual los sistemas operativos miden el tiempo.
Hay un archivo config-top.h recién definido en Bash 5.0, que permite al shell usar un valor estático para $ PATH.
Esta nueva versión de Bash 5.0 también tiene una nueva opción de shell que puede habilitar y deshabilitar el envío del registro a syslog en tiempo de ejecución.
Para información, syslog es un protocolo que define un servicio de registro de eventos para un sistema informático. También hace referencia al nombre del formato que permite estos intercambios.
Entre otros cambios importantes en este nuevo lanzamiento de Bash 5.0 la opción globasciirange ahora está habilitada de forma predeterminada, pero se puede deshabilitar de forma predeterminada en el momento de la configuración.
El modo POSIX ahora puede habilitar la opción shift_verbose y la opción de history incorporado en Bash 5.0 que ahora puede eliminar los rangos de entrada del historial usando – d start-end.
Otros cambios
Hay algunos cambios inconsistentes entre bash-4.4 y bash-5.0. Según Chet Ramey, los cambios en la forma en que se resuelven las variables nameref significan que algunos usos de namerefs se comportarán de manera diferente, aunque han intentado minimizar los problemas de compatibilidad.
En resumen, Bash 5.0 contiene varias correcciones en comparación con Bash 4.4, pero también una serie de nuevas características y mejoras para cumplir mejor con las especificaciones POSIX. Para obtener información completa sobre bash 5.0, puede consultar sus notas de publicación oficiales.
Estas nuevas características y mejoras ciertamente permiten que Bash sea más maduro de lo que ya es.
No olvidemos que la lista de shell se ha ampliado recientemente con PowerShell Core, la edición de código abierto de PowerShell que se ejecuta en Linux, macOS y Windows.
Este proyecto aún está en pleno desarrollo, pero podemos esperar que crezca rápidamente, ya que Microsoft está dado el visto bueno al código abierto “al menos por ahora”.
¿Cómo obtener Bash 5.0 en Linux?
De momento solo queda esperar a que sea incorporada esta nueva versión de Bash dentro de los repositorios de las distribuciones de Linux, ya que es la mejor opción.
Si quieren conocer un poco más y también aquellos que quieran obtener ya esta nueva versión, pueden visitar el siguiente enlace.