Bash31 phases · 122 topics
Progress
0 / 122
Foundations
▸
Basic Parameter Expansion Forms
▸
String Manipulation Expansion
▸
Indirect Expansion & Name References
Core Concepts
▸
Arrays & Array Expansion
▸
Pattern Matching & Wildcard Expansion
▸
Arithmetic & Base Conversion
Intermediate Skills
▸
Here Documents & Here Strings
▸
Subshell Execution (())
▸
Process Substitution (<(cmd), >(cmd))
Advanced Topics
▸
Command Substitution ($(), backtick)
▸
Subshell Variable Scope
▸
Nested Subshells
Expert Level
▸
Process Substitution vs Pipes
▸
Coprocesses (coproc)
▸
Indexed Arrays (declare -a)
Mastery
▸
Associative Arrays (declare -A, Bash 4+)
▸
Array Operations (slice, concat, transform)
▸
Looping Over Arrays
Ecosystem
▸
Array Sorting & Deduplication
▸
Array from Command Output (mapfile)
▸
Multi-Dimensional Arrays (simulated)
Architecture
▸
Bash Regex with =~
▸
Bracket Expressions & POSIX Character Classes
▸
Extended Globbing (extglob)
Optimization
▸
Sed with Extended Regex
▸
Awk Pattern Matching
▸
Grep and Perl-Compatible Regex
Deployment
▸
Regex Performance in Bash
▸
File Descriptor Manipulation
▸
Redirection Operators (<, >, >>, 2>&1)
Phase 11
▸
Named Pipes (FIFO)
▸
IO Redirection Order
▸
Socket Redirection (/dev/tcp)
Phase 12
▸
Buffer & Race Conditions in I/O
▸
Redirection with exec
▸
Function Definition & Return
Phase 13
▸
Local Variables (local) & Scoping
▸
Function Arguments ($@, $*, shift)
▸
Recursive Functions
Phase 14
▸
Function Export (export -f)
▸
Trap in Functions
▸
Autoloading Functions
Phase 15
▸
Signal Handling (trap)
▸
Common Signals (SIGINT, SIGTERM, SIGHUP)
▸
Cleanup Handler Pattern (trap EXIT)
Phase 16
▸
Signal Masking & Propagation
▸
Process Group Signaling (kill -- -PGID)
▸
Timeouts with trap ALRM
Phase 17
▸
Debugging with trap DEBUG
▸
set -e, -u, -o pipefail
▸
Bash Execution Tracing (set -x, PS4)
Phase 18
▸
ShellCheck Static Analysis
▸
Bash -n Syntax Checking
▸
errexit Pitfalls
Phase 19
▸
Debug Hooks (PS4, DEBUG trap)
▸
Bash Debugger (bashdb)
▸
Process Startup Overhead (exec vs builtin)
Phase 20
▸
Avoid Useless forking
▸
Brace Expansion Speed
▸
printf vs echo
Phase 21
▸
Built-in vs External Commands
▸
Reading Files Efficiently (read -N, mapfile)
▸
Parallel Execution Overhead
Phase 22
▸
Injection Attacks (eval, $() in strings)
▸
Sanitizing Input
▸
PATH & Environment Attacks
Phase 23
▸
File Permission Checks
▸
Temporary File Safety (mktemp)
▸
setuid Script Risks
Phase 24
▸
Shellshock (CVE-2014-6271)
▸
/dev/tcp & /dev/udp
▸
Netcat (nc) Patterns
Phase 25
▸
curl REST API Scripting
▸
HTTP Server in Bash (socat)
▸
DNS Queries (host, dig)
Phase 26
▸
SSH Automation (ssh, scp, rsync)
▸
Network Diagnostics (ping, traceroute, mtr)
▸
Grep Patterns & Performance
Phase 27
▸
Sed Commands & Addresses
▸
Awk Scripting (Records, Fields, Arrays)
▸
Cut, Paste, Join, Sort, Uniq
Phase 28
▸
Pipe & Process Chains
▸
Xargs Tricks (Parallel, Delimiter)
▸
Large File Streaming
Phase 29
▸
Background Processes (&)
▸
Wait for Job Completion
▸
GNU Parallel Tool
Phase 30
▸
xargs -P (parallel)
▸
Job Control (fg, bg, jobs, disown)
▸
Semaphore Pattern with flock
Phase 31
▸
Parallel Download Scripts
Bash RoadmapBash
Space mark complete
·
Esc close
·
Drag pan
·
Wheel zoom