skill-based roadmap · Tools
Bash & Shell Scripting Roadmap
A structured path from zero shell knowledge to job-ready proficiency, covering core syntax, automation, system administration, and production-grade scripting practices.
✓ Every resource link below is verified live.
1. Stage 1: Terminal & Shell Fundamentals
What is a Shell & the Terminal
Establishes mental model before writing any scripts.
Navigating the Filesystem
cd, ls, pwd, find are daily tools in every script.
File & Directory Operations
Creating, moving, copying, and deleting files is scripting bread-and-butter.
Getting Help – man, info, --help
Self-sufficiency starts with reading built-in documentation.
2. Stage 2: Core Bash Syntax
Variables & Data Types
Variables store state; understanding quoting prevents common bugs.
Conditionals – if, elif, else, case
Control flow is the backbone of any decision-making script.
Loops – for, while, until
Iteration automates repetitive tasks across files and data.
Functions
Reusable functions keep scripts modular and maintainable.
Exit Codes & Error Handling
Reliable scripts must detect and react to command failures.
3. Stage 3: Text Processing & I/O
stdin, stdout, stderr & Redirection
Composing pipelines requires mastery of I/O streams.
Pipes & Command Chaining
Piping transforms simple commands into powerful processing chains.
grep, sed & awk
These three tools cover 90% of text search and transformation needs.
String Manipulation & Parameter Expansion
Built-in string ops avoid spawning subshells for simple transforms.
4. Stage 4: Script Design & Robustness
Script Structure & Shebang
Proper structure ensures portability and correct interpreter selection.
Argument Parsing with getopts
Professional scripts accept flags and options like any CLI tool.
Defensive Scripting – set -euo pipefail
Strict mode flags catch silent errors before they cause damage.
Debugging with set -x & shellcheck
Tracing execution and static analysis eliminate most script bugs.
5. Stage 5: System Administration Scripting
File Permissions & Ownership
Scripts managing systems must handle chmod, chown, and ACLs.
Process Management – ps, kill, jobs
Automation often requires monitoring and controlling running processes.
Cron Jobs & Task Scheduling
Scheduled scripts are fundamental to ops automation.
Log Parsing & Reporting
Extracting insights from logs is a core sysadmin scripting task.
6. Stage 6: Advanced Bash & Automation
Arrays & Associative Arrays
Complex data structures enable sophisticated data-processing scripts.
Here Documents & Here Strings
Heredocs simplify multi-line input and template generation in scripts.
Process Substitution & Subshells
Advanced I/O techniques unlock powerful concurrent data-flow patterns.
Script Testing with bats-core
Automated tests make scripts safe to refactor and deploy confidently.
7. Stage 7: Real-World Projects & Best Practices
CI/CD Pipeline Scripting
Most pipelines (GitHub Actions, Jenkins) rely heavily on shell scripts.
Deployment & Infrastructure Automation
Provisioning scripts are foundational before adopting Terraform or Ansible.
Portability – POSIX sh vs Bash
Portable scripts run on Alpine, macOS, and any minimal environment.
Google Shell Style Guide
Industry coding standards are expected in professional codebases.