bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: command substitution is stripping set -e from options


From: Christoph Gysin
Subject: Re: command substitution is stripping set -e from options
Date: Thu, 8 Oct 2015 23:28:17 +0300

> I know you don't want to hear this, but you really need to stop thinking
> of set -e as "error checking".  It is an obsolescent historical anomaly
> that bash is required to support because POSIX specifies it.  It isn't
> useful for any purpose, and people who insist on using it are simply
> causing extra pain for themselves.

This is simply not true. It provides the automatic "|| exit 1" if you
know what special cases you need to avoid. I believe I am aware of all
those special cases. I'm willing to take that pain for the advantage
of having the script fail when any command called unexpectedly fails.
It saves me from the even greater pain of debugging the root cause
without any hint where it started going wrong.

> If you dislike this, then switch your project to a programming language
> that *has* automatic error checking.  Bash is just a shell, and there
> are many other languages that may better suit your project.

Unfortunately bash is the default system shell on a gazillion of
devices out there, so switching "my project" is not as trivial as it
might sound.

Chris
-- 
echo mailto: NOSPAM !#$.'<*>'|sed 's. ..'|tr "<*> !#:2" org@fr33z3



reply via email to

[Prev in Thread] Current Thread [Next in Thread]