On 31 May 2013 20:50, "Dan Nelson" <[email protected]> wrote:
>
> In the last episode (May 31), Reid Linnemann said:
> > On Fri, May 31, 2013 at 1:12 PM, Teske, Devin <[email protected]
>wrote:
> > > If you're arguing we have to change sh's behavior to be more
compliant,
> > > jilles already quoted XCU 2.12 (our shell is well within its right to
> > > run any/all lvalue/rvalue operands of a pipe in a sub-shell without
> > > contradicting the guidelines).
> > >
> > > But if you're arguing that it has to change to make things better or
> > > easier...  I don't know about that.  Might just make people lulled
into
> > > using a style that's non-portable.  I'd like to keep things the way
they
> > > are so that if you program for FreeBSD, you're inherently going to
> > > program in a fashion that is more portable.
> >
> > FWIW bash (invoked as sh) on RHEL-based linux systems exhibits the same
> > behavior-
> >
> > sh-3.2$ var=1
> > sh-3.2$ yes|var=2
> > sh-3.2$ echo $var
> > 1
> > sh-3.2$
> >
> > If my opinion matters at all, I would agree that for the sake of
> > portability that behavior be consistent with the majority of sh
> > implementations rather than "right" according to arbitrary ruling.
>
> On the other hand, zsh runs the last component of a pipeline in the parent
> shell.  The usual model is "do work in pipeline, process results in final
> component", and being able to simply set variables there that can be used
in
> the rest of the script is very elegant.

Right... But it's not portable.

Chris
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[email protected]"

Reply via email to