Stop hunting for the exit code that actually matters
Shell Scripting / Bash Tricks
Stop hunting for the exit code that actually matters
🧩 The Challenge
You know that feeling when you pipe a bunch of commands together and the whole thing fails, but you get back a 0 exit code because only the last command in the pipe succeeded? I’ve debugged entire production pipelines for hours only to realize the failure happened way back in the first command.
💡 The Fix
Flip on the pipefail option in your bash script to make the entire pipeline report the status of the first command that actually crashes. It’ll save you from chasing ghosts when silent failures happen mid-stream.
set -o pipefail
⚙️ Why It Works
Setting this flag tells the shell to propagate the exit status of the rightmost command that returns a non-zero value, rather than just returning the result of the very last process. It turns a silent disaster into an obvious one.
🚀 Pro-Tip: Stick this at the very top of your scripts alongside set -e to make your automation actually stop when things go sideways.
Linux Tips & Tricks | © ngelinux.com | 7/21/2026
