Bash is a Unix/Linux command interpreter (shell). Bash is the Bourne Again SHell created as part of GNU Project. Bash is an Bourne shell compatible shell that incorporates useful features from the Korn shell (ksh) and C shell (csh). It offers functional improvements over Bourne shell for both programming and interactive use. In addition, most Bourne shell scripts can be run by Bash without modification. Bash is intended to conform to the IEEE POSIX P1003.2/ISO 9945.2 Shell and Tools standard.
Bash was originally written by Brian Fox of the Free Software Foundation. The current developer and maintainer is Chet Ramey of Case Western Reserve University.
The improvements offered by Bash include:
- Command line editing
- Unlimited size command history
- Job Control
- Shell Functions and Aliases
- Indexed arrays of unlimited size
- Integer arithmetic in any base from two to sixty-four
Here are the top 10 Bash Programming Guides, Reference & Tools
1. Bash Guide for Beginners
This is a practical guide which tries to give real-life instead of theoretical examples. System administration relies a great deal on shell scripting; common tasks are often automated using simple scripts. This document is full of examples that will encourage you to write your own and that will inspire you to improve on existing scripts.
2. Bash Reference Manual
A comprehensive Bash reference document detailing shell features, built in commands, variables, job control, command line editing, using history interactively along with installation instructions. Also featured are the indexes to locate information from the reference manual for built in commands, reserved words , variable, function & concepts.
3. BASH Frequently Asked Questions
This FAQ is for experienced bash programmers , it lists the frequently asked questions on channel #bash on the freenode IRC network. These answers are contributed by the regular members of the channel. Almost all the questions are “How to” or “How do I” and you can browse this FAQ if you are looking for a solution to a problem.
>>BASH Frequently Asked Questions
4. Bash scripting cheat sheet
A helpful resource for the beginners, this Bash cheat sheet has examples and explanation of bash scripting basics, parameters loop, functions, and arrays.
>>Bash scripting cheatsheet
5. Bash Linux Man Page
man page for Linux gives all the options, parameters and detail in bash, this online man page is helpful if you want to refer to it while you are not logged in to your Linux system
6. An A-Z Index of the Bash command line for Linux.
This index of bash commands lists all the bash commands and brief explanation of their working. The commands are linked to online man page to get more details about the syntax, parameters and usages.
>>An A-Z Index of the Bash command line for Linux.
shell check is the online tool to find bugs in shell scripts. You can try it by copy pasting code in online form,.
shellcheck is an open source with GPLv3 licence available on GitHub & also available in CodeClimate and Codacy to auto-check your GitHub repo
>>ShellCheck – online tool to find bugs in shell scripts
8. Google’s Shell Style Guide
A must read for if you are starting shell scripting , this styling guide explains the proper styling, formatting , usages in shell scripting right way of writing shell scripts.
9. How to Install and Use the Linux Bash Shell on Windows 10
Windows 10 comes with new functionality and allows bash run under Windows 10, if you don’t have access to Linux/Unix machine or want to try out some bash scripting in your windows laptop or desktop, here are the complete details to run bash in Windows 10.
>>How to Install and Use the Linux Bash Shell on Windows 10
10. Downloading Bash
bash comes as pre-installed on most of Unix and Linux systems , however if you want to update to latest version Bash can be found on the main GNU ftp server:
- http://ftp.gnu.org/gnu/bash/ (via HTTP)
- ftp://ftp.gnu.org/gnu/bash/ (via FTP).
- It can also be found on the GNU mirrors;