bug-bash
[Top][All Lists]
Advanced

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

Re: bash errexit shell option does not work in some cases.


From: Robert Elz
Subject: Re: bash errexit shell option does not work in some cases.
Date: Mon, 01 Jun 2020 17:28:20 +0700

    Date:        Sun, 31 May 2020 22:46:48 -0400
    From:        Eli Schwartz <eschwartz@archlinux.org>
    Message-ID:  <5a7df0ba-3ad1-1f35-1107-09fdd5950359@archlinux.org>

While I generally agree with ...

  | Don't use errexit

but not really with:

  | it does not mean what you think it does.

(it does mean what I think it means ...)

in this case:

  | You're merely the latest person to discover that this applies to you:
  | http://mywiki.wooledge.org/BashFAQ/105

doesn't really apply - the cases reported are simply bugs in bash,
a shell implementing -e correctly should exit as it was expected to.

This all results from earlier posix specs where -e and simple commands
were linked - the wording has been improved (still short of perfect)
and simple commands are no longer relevant (other than that exit status
generally originates with the result from a simple command).

I would note that the "echo end..." after the earlier echo that prints
the exit status is poinltless - the echo printing the exit status is all
that is needed, that one exits with status 0, so the following command is
obviously going to run - if the shell were working properly, the first
echo (and anything following) would never be encountered.

All that said, back to the original advice, unless you really know what
you're doing, and really understand the examples in Greg's FAQ page,
then you almost certainly shouldn't be using -e.

kre




reply via email to

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