Exit codes and error handling
How $?, PIPESTATUS, set -e, and pipefail combine to tell a script what actually succeeded or failed, and where each one falls short.
Good starting points for newcomers
How $?, PIPESTATUS, set -e, and pipefail combine to tell a script what actually succeeded or failed, and where each one falls short.
The rwx/owner-group-other model, numeric vs symbolic chmod, umask, and why setuid/setgid on directories behave differently than you'd expect.
How | connects commands together, and how >, >>, 2>&1, and <() route data to and from files, other commands, and each other.
Write, mark executable, and run your first bash script, plus what the shebang line and PATH lookup actually do.
Why unquoted variables break bash scripts, when to use double vs single quotes, and how glob characters make it worse.
The difference between [ and [[ in bash, why unquoted variables crash [ but not [[, and pattern matching with case.