GNU Bash (Bourne Again SHell) is the default Unix shell and command-line interpreter on most Linux distributions and macOS. Developed by Brian Fox for the GNU Project as a free replacement for the Bourne shell, Bash provides a rich scripting language with variables, control structures, functions, I/O redirection, job control, and process management. Bash scripts are the foundational automation tool for system administration, CI/CD pipelines, DevOps tooling, and software build systems.
Bash Shell is profiled on the APIs.io network. Tagged areas include Automation, Bash, Command Line, DevOps, and Linux.
Bash Shell’s developer surface includes documentation and 9 more developer resources.
aid: bash
name: Bash Shell
description: GNU Bash (Bourne Again SHell) is the default Unix shell and command-line interpreter on most Linux distributions
and macOS. Developed by Brian Fox for the GNU Project as a free replacement for the Bourne shell, Bash provides a rich scripting
language with variables, control structures, functions, I/O redirection, job control, and process management. Bash scripts
are the foundational automation tool for system administration, CI/CD pipelines, DevOps tooling, and software build systems.
type: Index
kind: opensource
accessModel:
pricing: unknown
onboarding: unknown
trial: false
try_now: false
public: false
label: Unknown
confidence: low
source: []
generated: '2026-07-22'
method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/bash.png
tags:
- Automation
- Bash
- Command Line
- DevOps
- Linux
- Scripting
- Shell
- Unix
tags_raw:
- Automation
- Bash
- Command-Line
- DevOps
- Linux
- Scripting
- Shell
- Unix
url: https://raw.githubusercontent.com/api-evangelist/bash/refs/heads/main/apis.yml
created: '2024-01-01'
modified: '2026-04-21'
specificationVersion: '0.23'
apis: []
common:
- type: DomainSecurity
url: security/bash-domain-security.yml
- type: Website
url: https://www.gnu.org/software/bash/
name: GNU Bash
- type: Documentation
url: https://www.gnu.org/software/bash/manual/bash.html
name: Bash Reference Manual
- type: Website
url: https://git.savannah.gnu.org/cgit/bash.git
name: Source Code Repository
- type: Website
url: https://ftp.gnu.org/gnu/bash/
name: Download
- type: License
url: https://www.gnu.org/licenses/gpl-3.0.html
name: GPL v3 License
- type: Website
url: https://google.github.io/styleguide/shellguide.html
name: Google Shell Style Guide
- type: Website
url: https://github.com/awesome-lists/awesome-bash
name: Awesome Bash
- type: Website
url: https://savannah.gnu.org/bugs/?group=bash
name: Bug Tracker
- type: Website
url: https://tiswww.case.edu/php/chet/bash/bashtop.html
name: Chet Ramey - Bash Maintainer
- name: Project Info
type: ProjectInfo
data:
- name: Current Version
description: Bash 5.2 (released October 2022), with patch releases ongoing.
- name: Original Author
description: Brian Fox, written in 1988 for the GNU Project as a free replacement for the Bourne shell.
- name: Current Maintainer
description: Chet Ramey (Case Western Reserve University) has maintained Bash since 1990.
- name: License
description: GNU General Public License version 3 (GPL-3.0).
- name: Language
description: Written in C; available on all Unix-like systems and via WSL on Windows.
- name: Package Registry
description: Distributed as source tarball from ftp.gnu.org/gnu/bash/ and via OS package managers (apt, yum, brew).
- name: Key Features
type: Features
data:
- name: Built-in Commands
description: Core built-in commands (cd, echo, read, test, export, alias) executed without forking.
- name: Shell Scripting
description: Full scripting language with variables, arrays, conditionals, loops, and functions.
- name: Parameter Expansion
description: String manipulation, pattern matching, and variable substitution via parameter expansion.
- name: I/O Redirection
description: Redirect stdin, stdout, stderr to files, devices, and between processes with pipes.
- name: Job Control
description: Background and foreground process management with fg, bg, jobs, and signals.
- name: Arithmetic Expansion
description: Integer arithmetic via $(()) and let built-in for numeric computation in scripts.
- name: Process Substitution
description: Treat command output as a file using process substitution for pipeline flexibility.
- name: Readline Integration
description: Command-line editing with history, completion, and key bindings via GNU Readline.
- name: Array Support
description: Indexed and associative arrays for complex data structures in shell scripts.
- name: Brace Expansion
description: Generate arbitrary strings and file lists via brace expansion patterns.
- name: Use Cases
type: UseCases
data:
- name: System Administration
description: Automate system tasks, user management, log rotation, and maintenance scripts.
- name: CI/CD Pipelines
description: Build, test, and deploy scripts in GitHub Actions, GitLab CI, Jenkins, and CircleCI.
- name: DevOps Automation
description: Infrastructure provisioning, configuration management, and deployment orchestration.
- name: Data Processing
description: Text processing pipelines using grep, awk, sed, and shell pipelines.
- name: API Scripting
description: HTTP API calls with curl and response parsing for automation and testing.
- name: File Management
description: Bulk file operations, directory traversal, and file transformation scripts.
- name: Environment Management
description: Manage environment variables, PATH, and shell configuration via .bashrc and .profile.
- name: Key Tools
type: Integrations
data:
- name: curl
- name: grep
- name: awk
- name: sed
- name: jq
- name: make
- name: ssh
- name: rsync
maintainers:
- FN: Kin Lane
email: kin@apievangelist.com