[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Command substitution and errexit
From: |
DJ Mills |
Subject: |
Re: Command substitution and errexit |
Date: |
Mon, 15 Oct 2012 16:00:01 -0400 |
On Mon, Oct 15, 2012 at 11:23 AM, Nikolai Kondrashov
<Nikolai.Kondrashov@redhat.com> wrote:
> Hi everyone,
>
> I've noticed that errexit is disabled inside command substitution.
> Is this intentional?
>
> It makes it hard to save and restore errexit state. I.e. you can't simply
> say
> opts=`set +o`, because errexit will always be stored as off. What's
> interesting, $SHELLOPTS shows it still on inside the command substitution.
>
> Sincerely,
> Nick
>
I'm also not entirely sure what you mean by "errexit will always be
stored as off."
set -e; set +o # gives me:
set +o allexport
set -o braceexpand
set +o emacs
set -o errexit
set +o errtrace
set +o functrace
set -o hashall
set +o histexpand
set -o history
set +o ignoreeof
set -o interactive-comments
set +o keyword
set -o monitor
set +o noclobber
set +o noexec
set +o noglob
set +o nolog
set +o notify
set +o nounset
set +o onecmd
set +o physical
set +o pipefail
set +o posix
set +o privileged
set +o verbose
set -o vi
set +o xtrace
It's on there... Do you not understand that command substitution
creates a subshell?
What is the goal/problem that you're trying to solve?
- Command substitution and errexit, Nikolai Kondrashov, 2012/10/15
- Re: Command substitution and errexit, Nikolai Kondrashov, 2012/10/15
- Re: Command substitution and errexit, Greg Wooledge, 2012/10/15
- Re: Command substitution and errexit, Nikolai Kondrashov, 2012/10/15
- Re: Command substitution and errexit, DJ Mills, 2012/10/15
- Re: Command substitution and errexit, DJ Mills, 2012/10/15
- Re: Command substitution and errexit, Nikolai Kondrashov, 2012/10/16