Datos esenciales
1989, GNU (Brian Fox, luego Chet Ramey). Shell de Unix compatible con Bourne, con mejoras de scripting, historial y completado.
Lenguaje #43
Bourne Again SHell: scripting universal en sistemas Unix. Con tuberías, globbing y scripting accesible, Bash es el pegamento de automatización en servidores y desarrollo.
1989, GNU (Brian Fox, luego Chet Ramey). Shell de Unix compatible con Bourne, con mejoras de scripting, historial y completado.
Bash reemplaza sh en GNU como shell por defecto. Se extiende a Linux y macOS (hasta Catalina). Añade arrays, brace expansion, arithmetic y mejoras interactivas. Bash 5 incorpora mejoras de shell options y correcciones de seguridad.
Brian Fox desarrolla las primeras versiones; Chet Ramey mantiene Bash por décadas. Bash se convierte en shell por defecto en la mayoría de distros GNU/Linux.
Scripts de automatización, DevOps, CI/CD, instalación, contenedores, glue entre utilidades Unix, configuración de sistemas y tareas diarias en terminal.
Funciones, variables sin tipos estrictos, arrays, control if/for/while, sustitución de comandos, piping, redirecciones, globbing, case, subshells, set -e/-u/-o pipefail para robustez.
GNU coreutils, grep/sed/awk, gestores de paquetes en distros, shellcheck para lint, bash-completion, frameworks de pruebas (bats), scripts de CI, contenedores y cloud-init.
Hereda de sh y csh/tcsh, extiende con historia y completado. Bash scripts son la base de DevOps clásico. Inspira shells modernos (zsh, fish) y sigue como estándar de facto en servidores.
Bash se pronuncia “Bash” (por Bourne Again). Shebang `#!/usr/bin/env bash` es ubicuo. El debate set -e / pipefail es parte del folclore DevOps.
Bash 5.x se mantiene activo. Aunque zsh/fish ganan adeptos, Bash sigue dominante en servidores, scripts de CI y contenedores.