YOUR BASH LEARNING PATH
A little more Bash.
A little more confidence.
One idea at a time, with examples you can follow and checkpoints to see what’s clicking. New here? Begin with chapter one. Know a little already? Jump right in.
Before you start
Assumes you can open a terminal and run a simple command with arguments. The course then explains quoting, exit status, variables, and shell control flow.
Your chapters
Choose any starting point- 01Open chapter: Words, quotes, and arguments
Words, quotes, and arguments
BeginnerKeep data intact when Bash builds a command line.
Start here, or skip ahead - 02Open chapter: Parameter expansion and missing-value policy
Parameter expansion and missing-value policy
IntermediateChoose defaults that preserve the distinction between empty and unset.
Open whenever you’re ready - 03Open chapter: Exit status and conditional work
Exit status and conditional work
BeginnerUse command success as control flow instead of guessing from output.
Open whenever you’re ready - 04Open chapter: Integer arithmetic and command status
Integer arithmetic and command status
IntermediateSeparate a numeric result from the success status of an arithmetic command.
Open whenever you’re ready - 05Open chapter: Arrays, functions, and exact argument lists
Arrays, functions, and exact argument lists
IntermediatePass a collection of shell arguments without flattening it.
Open whenever you’re ready - 06Open chapter: Patterns and filename-safe iteration
Patterns and filename-safe iteration
IntermediateDistinguish shell patterns from data and handle empty matches deliberately.
Open whenever you’re ready - 07Open chapter: Read records without corrupting them
Read records without corrupting them
IntermediateTreat standard input and output as deliberate data streams.
Open whenever you’re ready - 08Open chapter: Redirections and separate output channels
Redirections and separate output channels
IntermediateKeep machine-readable results separate from diagnostics.
Open whenever you’re ready - 09Open chapter: Pipelines, subshells, and failure propagation
Trace both data flow and process-local state.
Open whenever you’re ready - 10Open chapter: Options and positional argument contracts
Options and positional argument contracts
IntermediateParse a command’s interface without losing operands.
Open whenever you’re ready - 11Open chapter: Background jobs and explicit completion
Track child processes instead of assuming launch means success.
Open whenever you’re ready - 12Open chapter: Build predictable command-line tools
Specify arguments, cleanup, and observable outcomes.
Open whenever you’re ready - 13Open chapter: Testing exact arguments and failure behavior
Verify both output bytes and command status at boundary cases.
Open whenever you’re ready
PUT IT TOGETHER
Final assessment & certificate
30 multiple-choice questions and 2 written coding problems. Pass the knowledge section at 80% overall and at least 50% in every chapter area, complete and review the written practice, and meet the attempt-integrity checks to unlock your certificate.
The certificate records a CodeQuest foundations assessment. Written work is self-reviewed; identity and independent proficiency are not verified.
Take an issuer-recorded assessment with a verifiable certificate
Continue the original guided missions