Bash
GNU Bash (Bourne Again SHell) is maintained by Chet Ramey at Case Western Reserve University under the GNU Project; current stable release is 5.3, shipped July 5, 2025, licensed GPLv3+. It's the default shell on nearly every Linux distribution and the base shell in most Docker images. Bare Bash starts in under 50ms, versus roughly 500-1,000ms for Zsh loaded with Oh My Zsh plugins. Bash is POSIX-compatible β a superset of the POSIX shell spec with extensions enabled by default (arrays, [[ ]] tests, process substitution) and a --posix mode for stricter conformance β which is why CI/CD pipelines and Dockerfiles standardize on it over Fish (not POSIX-compatible at all). macOS still ships an ancient Bash 3.2 (2007) because Apple won't distribute GPLv3 code β it made Zsh the default interactive shell in Catalina (2019) instead. Community framework Oh My Zsh holds ~189k GitHub stars versus Bash's own Bash-it at ~15k. Current version/status: 5.3 (July 5, 2025). License: GPLv3+. Maintained by Chet Ramey / GNU Project (Case Western Reserve University).
Pick Bash when scripts must run unmodified across Linux servers, Docker containers, and CI pipelines β its POSIX compatibility and near-universal preinstallation are non-negotiable there. Don't pick it as your interactive daily driver if you want speed and ergonomics with zero setup: Fish 4.0 (Rust rewrite, Feb 2025) gives sub-100ms startup and sane autosuggestions/completions out of the box, no plugin framework required. Zsh with Oh My Zsh is the middle ground if you'll eat a 500ms+ startup tax for 300+ plugins. Honest weakness even Bash veterans admit: its scripting syntax is notoriously unforgiving β unquoted variables and word-splitting break scripts silently, which is why shellcheck is treated as mandatory, not optional, in serious codebases. Known weakness: Bash's scripting syntax is notoriously error-prone β unquoted variables, word-splitting, and inconsistent array handling cause silent bugs, which is why shellcheck linting is treated as near-mandatory in production scripts.
See how it ranks β