Skip to main content

Bourne Again Shell (Bash)

PropertyValue
descriptionGNU shell and command language interpreter commonly used on Linux, macOS, and Unix-like systems.
tagsref
rating

Bash is the GNU shell and command language interpreter commonly used on Linux, macOS, and other Unix-like systems.

Its name stands for Bourne Again Shell. Bash is used both as an interactive shell for working in a terminal and as a scripting language for automation.

What it does

Bash provides a text-based interface for running commands and writing scripts.

It is commonly used to:

  • Run commands from a terminal
  • Automate repetitive tasks with shell scripts
  • Chain programs together in a CLI workflow
  • Manage files, processes, and system tasks
  • Set environment variables and shell configuration

Core concepts

Interactive shell

Bash can be used interactively as the shell prompt you type commands into.

That is why it is closely associated with terminal workflows on Unix-like systems.

Shell scripting

Bash is also a scripting language.

That makes it useful for automation, setup scripts, deployment helpers, and operating system tasks.

Shell compatibility

Bash is broadly compatible with historical sh behavior while adding many practical features for modern use.

Examples include command history, job control, shell functions, arrays, arithmetic, and programmable completion.

Common use cases

  • Local system administration
  • Developer setup and automation scripts
  • Deployment and operations tasks
  • Running commands on servers and VMs
  • Writing small utility scripts around existing command-line tools

Practical notes

  • Bash is a shell, not the same thing as the terminal application that displays it.
  • Many systems use Bash by default, but some use other shells such as zsh, fish, or sh.
  • A Bash script is often stored in a .sh file, but the extension is conventional rather than required.
  • Bash remains one of the most important scripting and command environments in server and developer workflows.

Sources Used

Frequently Asked Questions

Is Bash the same as Terminal?

No. Bash is the shell or command interpreter. The terminal is the application window or interface used to interact with it.

Is Bash a programming language?

Yes. It is a shell scripting language as well as an interactive command environment.

Does Bash only run on Linux?

No. It also runs on macOS, many Unix-like systems, and other supported environments.