THE ARCADE
ArcadePathsBuildPrep
  1. Home
  2. /Bash & Zsh
Languages

Bash & Zsh

The shells your scripts actually run in — quoting, expansion, traps.

← Back to all areas
  • 01·150 XP
    Variables & Quoting
    Single vs double quotes, ${var} braces, and parameter expansion that replaces half your sed scripts.
    •
  • 02·150 XP
    Arrays & Strings
    Indexed arrays, associative arrays, slicing, length — and where zsh's array semantics quietly win.
    •
  • 03·150 XP
    Control Flow
    if / while / for / case — and the three different test brackets ([, [[, and (() — that mean similar things and don't.
    •
  • 04·150 XP
    Functions & Locals
    `local`, return values vs exit codes, scope rules — and why bash functions don't return what you think they return.
    •
  • 05·175 XP
    Pipes & Redirection
    fd 0/1/2 manipulation, here-docs, here-strings, tee, process substitution — the full I/O toolkit.
    •
  • 06·175 XP
    Globbing & Expansion
    Globs, brace expansion, tilde, command substitution, process substitution — and the ORDER they happen in.
    •
  • 07·175 XP
    Job Control & Traps
    & background, wait, jobs, fg/bg, trap on EXIT/ERR/INT — making your scripts behave like good UNIX citizens.
    •
  • 08·175 XP
    set Options
    set -euo pipefail, IFS, set -x — the four-line opener that turns a fragile bash script into one you can trust.
    •
  • 09·200 XP
    Bash vs Zsh
    Compatibility, key zsh wins (extended globbing, prompts, completions, arrays), when each shell is right.
    •
arcade.