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
url: https://raw.githubusercontent.com/api-evangelist/bash/refs/heads/main/apis.yml
created: '2024-01-01'
modified: '2026-04-21'
specificationVersion: '0.19'
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