Bash Programming logo

Bash Programming

Free

Learn BASH shell scripting from basics to intermediate

FreeFree tier
Type
Open Source

About Bash Programming

A comprehensive tutorial for learning BASH shell scripting from basic to intermediate level. Covers essential topics such as redirection, pipes, variables, conditionals, loops, functions, user interfaces, and debugging. Includes practical examples and sample scripts like a simple backup script and file renamer. Authored by Mike G in 2000, this HOWTO is a classic resource for Unix/Linux users looking to automate tasks and write effective shell scripts.

Key Features

Step-by-step tutorial for beginners
Covers redirection, pipes, variables, conditionals, loops, and functions
Practical examples including backup script and file renamer
User interface using select and command line
Arithmetic evaluation and capturing command output
Debugging tips and ways to call BASH

Pros & Cons

Pros
  • Comprehensive coverage of essential BASH concepts
  • Practical, real-world examples
  • Free and open-source resource
  • Well-structured with clear sections and tables
Cons
  • Document dates from 2000, some examples may be outdated
  • Not interactive; no video or hands-on exercises
  • Assumes basic Unix command-line knowledge
  • No coverage of modern BASH features (e.g., associative arrays in Bash 4)

Best For

Learning BASH shell scripting fundamentalsAutomating system administration tasksWriting utility scripts for file processingCreating interactive menu-driven scripts

FAQ

What is this document?
It is the BASH Programming - Introduction HOW-TO, a tutorial written by Mike G to help beginners start programming intermediate shell scripts.
Who is this document for?
Users with basic Unix knowledge who want to learn BASH scripting from a beginner to intermediate level.
What topics are covered?
Topics include hello world scripts, redirection, pipes, variables, conditionals (if/then/else), loops (for, while, until), functions, user interfaces with select, arithmetic evaluation, debugging, and more.
Is this document still relevant?
While it covers fundamental concepts that are still applicable, it was written in 2000 and does not cover newer BASH features. It remains a useful starting point for beginners.