Bash Scripting

Updated 3 September 2026

Bash Scripting — a complete, self-contained learning track in 15 modules. It teaches you to read, write, and debug the shell scripts that hold real infrastructure together: deploy scripts, cron jobs, CI steps, health checks.

What it assumes: nothing about programming or scripting. You only need a Linux machine (or macOS, or WSL on Windows) with a terminal you can open. Every concept is taught before it is used — start at Module 1 and the track never references anything it has not already explained.

🗺️ Roadmap

Foundation

1. The Shell, Scripts, and How Commands Run

2. Variables, Quoting, and Word Splitting

3. Exit Codes and Command Chaining

4. Streams, Redirection, and Pipes

5. Conditionals: if, test, and case

Intermediate

6. Loops

7. Script Arguments and User Input

8. Functions and Script Structure

9. Parameter Expansion and String Manipulation

10. Arrays and Associative Arrays

Advanced

11. Text Processing in Pipelines

12. Processes, Subshells, and Job Control

13. Signals and Traps

14. Error Handling and Defensive Scripting

15. Debugging, Testing, and Production Scripts

📚 Modules

Module 1 — The Shell, Scripts, and How Commands RunModule 2 — Variables, Quoting, and Word SplittingModule 3 — Exit Codes and Command ChainingModule 4 — Streams, Redirection, and PipesModule 5 — Conditionals: if, test, and caseModule 6 — LoopsModule 7 — Script Arguments and User InputModule 8 — Functions and Script StructureModule 9 — Parameter Expansion and String ManipulationModule 10 — Arrays and Associative ArraysModule 11 — Text Processing in PipelinesModule 12 — Processes, Subshells, and Job ControlModule 13 — Signals and TrapsModule 14 — Error Handling and Defensive ScriptingModule 15 — Debugging, Testing, and Production Scripts

🧭 How to use this

Work through the modules in order — each one uses only what earlier modules taught. Inside a module: read the concept, read the analogy, then type the exercise yourself (do not copy-paste) and try to predict the output before opening the ✅ expected-result toggle. Some exercises fail on purpose — the error message is the lesson. At the end of each Part, attempt the 🎯 interview questions out loud before opening the answers; the gap between your answer and the hidden one is exactly what to study. Finish each module with its self-assessment list before moving on.
Spotted a mistake or want something added? Send me a note.